From 414c7569f2f813065f82b027d1184fba132087e5 Mon Sep 17 00:00:00 2001 From: Norbert Warmuth Date: Wed, 25 Nov 1998 23:34:00 +0000 Subject: [PATCH] Tue 24 Nov 12:43:20 1998 Peter Kleiweg * vfs/vfs.c (vfs_parse_ls_lga): ignore trailing + in permission string which indicate a file with extented attributes (ACL) Wed Nov 25 22:16:19 1998 Norbert Warmuth * src/cmd.c (dirsizes_cmd): Quote characters with a special meaning when passing it to du. --- src/ChangeLog | 5 +++++ src/cmd.c | 6 +++++- vfs/ChangeLog | 5 +++++ vfs/vfs.c | 6 +++++- 4 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 70191faad..4b0d301b1 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +Wed Nov 25 22:16:19 1998 Norbert Warmuth + + * cmd.c (dirsizes_cmd): Quote characters with a special meaning + when passing it to du. + 1998-11-23 Federico Mena Quintero * dlg.c (dlg_try_hotkey): Removed unused declaration of input_event. diff --git a/src/cmd.c b/src/cmd.c index 3d3ef69e4..17647b103 100644 --- a/src/cmd.c +++ b/src/cmd.c @@ -1364,7 +1364,11 @@ void dirsizes_cmd (void) for (i = 0; i < panel->count; i++) if (S_ISDIR (panel->dir.list [i].buf.st_mode) && strcmp (panel->dir.list [i].fname, "..")) { - strcpy (p, panel->dir.list [i].fname); + /* The quotes will be removed from the shell when invoking + du, i.e. no need to remove quotes when reading the + directory sizes from du. */ + strcpy (p, r = name_quote (panel->dir.list [i].fname, 0)); + free (r); p = strchr (p, 0); *(p++) = ' '; } diff --git a/vfs/ChangeLog b/vfs/ChangeLog index 59dee2e87..758c0b9d0 100644 --- a/vfs/ChangeLog +++ b/vfs/ChangeLog @@ -1,3 +1,8 @@ +Tue 24 Nov 12:43:20 1998 Peter Kleiweg + + * vfs.c (vfs_parse_ls_lga): ignore trailing + in permission string + which indicate a file with extented attributes (ACL) + Mon Nov 23 21:19:43 1998 Norbert Warmuth * ftpfs.c (resolve_symlink_with_ls_options): that's resolve_symlinks diff --git a/vfs/vfs.c b/vfs/vfs.c index 2682fafbb..4a9bca2bc 100644 --- a/vfs/vfs.c +++ b/vfs/vfs.c @@ -1499,10 +1499,14 @@ vfs_parse_ls_lga (char *p, struct stat *s, char **filename, char **linkname) s->st_mode |= (S_IRUSR | S_IRGRP | S_IROTH | S_IWUSR); p += 9; } else { - if ((i = vfs_parse_filemode(p)) ==-1) + if ((i = vfs_parse_filemode(p)) == -1) goto error; s->st_mode |= i; p += 9; + + /* This is for an extra ACL attribute (HP-UX) */ + if (*p == '+') + p++; } free(p_copy);