handle "/*" path parsing correctly; netbsd pr#2970, darcey@druid.com
authorderaadt <deraadt@openbsd.org>
Tue, 3 Dec 1996 01:33:47 +0000 (01:33 +0000)
committerderaadt <deraadt@openbsd.org>
Tue, 3 Dec 1996 01:33:47 +0000 (01:33 +0000)
gnu/libexec/uucp/libunix/mkdirs.c

index df4f987..26307a8 100644 (file)
@@ -28,11 +28,6 @@ fsysdep_make_dirs (zfile, fpublic)
     {
       if (*z == '/' && z != zcopy)
        {
-         /* Some versions of uuto will send a double slash.  Some
-             systems will fail to create a directory ending in a
-             slash.  */
-         if (z[-1] == '/')
-           continue;
          *z = '\0';
          if (mkdir (zcopy, imode) != 0
              && errno != EEXIST
@@ -48,6 +43,11 @@ fsysdep_make_dirs (zfile, fpublic)
              return FALSE;
            }
          *z = '/';
+         /* Some versions of uuto will send a double slash.  Some
+             systems will fail to create a directory ending in a
+             slash.  */
+      while (z[1] == '/')
+        z++;
        }
     }