fix
authorMiklos Szeredi <miklos@szeredi.hu>
Fri, 10 Dec 2004 11:55:25 +0000 (11:55 +0000)
committerMiklos Szeredi <miklos@szeredi.hu>
Fri, 10 Dec 2004 11:55:25 +0000 (11:55 +0000)
ChangeLog
util/fusermount.c

index 23dbbc78694f5e1728fe585c8f0797e58fa4f347..66e88c55a2f4c4f2f015376571fc46626c34be7a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2004-12-10  Miklos Szeredi <miklos@szeredi.hu>
+
+       * When mounting on a subdirectory of / don't duplicate slashes at
+       the beggining of path (spotted by David Shaw)
+
 2004-12-09  Miklos Szeredi <miklos@szeredi.hu>
 
        * Fix bug causing garbage in mount options (spotted by David Shaw)
index 77e808e3cbb2ea5e7d5520688fc785f7f63d6c6b..40df4902088de5b4cd809a530ca184f8b75026e1 100644 (file)
@@ -817,8 +817,13 @@ static char *resolve_path(const char *orig)
         dst = strdup(buf);
     else {
         dst = (char *) malloc(strlen(buf) + 1 + strlen(lastcomp) + 1);
-        if (dst)
-            sprintf(dst, "%s/%s", buf, lastcomp);
+        if (dst) {
+            unsigned buflen = strlen(buf);
+            if (buflen && buf[buflen-1] == '/')
+                sprintf(dst, "%s%s", buf, lastcomp);
+            else
+                sprintf(dst, "%s/%s", buf, lastcomp);
+        }
     }
     free(copy);
     if (dst == NULL)