diff options
author | Eric Andersen <andersen@codepoet.org> | 2001-05-07 22:49:43 +0000 |
---|---|---|
committer | Eric Andersen <andersen@codepoet.org> | 2001-05-07 22:49:43 +0000 |
commit | 04b0354d8e0b09ed2af80f590e2203137114819b (patch) | |
tree | 3459f582185256f84a7aa9c9e9953267f93e8684 /coreutils | |
parent | 8f3e51b4adac772957633eaa070bad011f4724ed (diff) |
Patch from Vladimir to use last_char_is to simplify du.c
Diffstat (limited to 'coreutils')
-rw-r--r-- | coreutils/du.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/coreutils/du.c b/coreutils/du.c index b618e0760..3e4821a39 100644 --- a/coreutils/du.c +++ b/coreutils/du.c @@ -76,7 +76,6 @@ static long du(char *filename) { struct stat statbuf; long sum; - int len; if ((lstat(filename, &statbuf)) != 0) { perror_msg("%s", filename); @@ -95,6 +94,7 @@ static long du(char *filename) if (S_ISDIR(statbuf.st_mode)) { DIR *dir; struct dirent *entry; + char *newfile; dir = opendir(filename); if (!dir) { @@ -102,12 +102,11 @@ static long du(char *filename) return 0; } - len = strlen(filename); - if (filename[len - 1] == '/') - filename[--len] = '\0'; + newfile = last_char_is(filename, '/'); + if (newfile) + *newfile = '\0'; while ((entry = readdir(dir))) { - char *newfile; char *name = entry->d_name; if ((strcmp(name, "..") == 0) @@ -188,7 +187,7 @@ int du_main(int argc, char **argv) return status; } -/* $Id: du.c,v 1.46 2001/05/03 04:45:40 kraai Exp $ */ +/* $Id: du.c,v 1.47 2001/05/07 22:49:43 andersen Exp $ */ /* Local Variables: c-file-style: "linux" |