Fix buffer underrun noted and solved by Larry Doolittle.
authorMatt Kraai <kraai@debian.org>
Thu, 19 Apr 2001 14:56:23 +0000 (14:56 -0000)
committerMatt Kraai <kraai@debian.org>
Thu, 19 Apr 2001 14:56:23 +0000 (14:56 -0000)
coreutils/dirname.c
dirname.c

index 8313e99c692c26af3ec34578da561b08acdcde2e..935a8313c406d2e8ff646940a7c5ed6a2b954166 100644 (file)
@@ -37,7 +37,7 @@ extern int dirname_main(int argc, char **argv)
        argv++;
 
        s=*argv+strlen(*argv)-1;
-       while (s != *argv && *s == '/') {
+       while (s > *argv && *s == '/') {
                *s-- = '\0';
        }
        s = strrchr(*argv, '/');
index 8313e99c692c26af3ec34578da561b08acdcde2e..935a8313c406d2e8ff646940a7c5ed6a2b954166 100644 (file)
--- a/dirname.c
+++ b/dirname.c
@@ -37,7 +37,7 @@ extern int dirname_main(int argc, char **argv)
        argv++;
 
        s=*argv+strlen(*argv)-1;
-       while (s != *argv && *s == '/') {
+       while (s > *argv && *s == '/') {
                *s-- = '\0';
        }
        s = strrchr(*argv, '/');