diff options
Diffstat (limited to 'basename.c')
-rw-r--r-- | basename.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/basename.c b/basename.c index 06e27663f..5fe5e0f03 100644 --- a/basename.c +++ b/basename.c | |||
@@ -34,8 +34,10 @@ extern int basename_main(int argc, char **argv) | |||
34 | argv++; | 34 | argv++; |
35 | 35 | ||
36 | s1=*argv+strlen(*argv)-1; | 36 | s1=*argv+strlen(*argv)-1; |
37 | if (*s1 == '/') | 37 | while (s1 && *s1 == '/') { |
38 | *s1 = '\0'; | 38 | *s1 = '\0'; |
39 | s1=*argv+strlen(*argv)-1; | ||
40 | } | ||
39 | s = strrchr(*argv, '/'); | 41 | s = strrchr(*argv, '/'); |
40 | printf("%s\n", (s)? s + 1 : *argv); | 42 | printf("%s\n", (s)? s + 1 : *argv); |
41 | exit(TRUE); | 43 | exit(TRUE); |