Browse code

FIX 6613:launch docker fail with space named drive

Signed-off-by: Guillaume Dufour <guillaume.duff@gmail.com>
Signed-off-by: Tibor Vass <teabee89@gmail.com>

Guillaume Dufour authored on 2014/09/15 18:04:05
Showing 2 changed files
... ...
@@ -61,12 +61,13 @@ func parseInfoFile(r io.Reader) ([]*MountInfo, error) {
61 61
 		// Safe as mountinfo encodes mountpoints with spaces as \040.
62 62
 		index := strings.Index(text, " - ")
63 63
 		postSeparatorFields := strings.Fields(text[index+3:])
64
-		if len(postSeparatorFields) != 3 {
65
-			return nil, fmt.Errorf("Error did not find 3 fields post '-' in '%s'", text)
64
+		if len(postSeparatorFields) < 3 {
65
+			return nil, fmt.Errorf("Error found less than 3 fields post '-' in %q", text)
66 66
 		}
67
+
67 68
 		p.Fstype = postSeparatorFields[0]
68 69
 		p.Source = postSeparatorFields[1]
69
-		p.VfsOpts = postSeparatorFields[2]
70
+		p.VfsOpts = strings.Join(postSeparatorFields[2:], " ")
70 71
 		out = append(out, p)
71 72
 	}
72 73
 	return out, nil
... ...
@@ -64,7 +64,8 @@ const (
64 64
     235 35 253:32 / /var/lib/docker/devicemapper/mnt/1a28059f29eda821578b1bb27a60cc71f76f846a551abefabce6efd0146dce9f rw,relatime shared:217 - ext4 /dev/mapper/docker-253:2-425882-1a28059f29eda821578b1bb27a60cc71f76f846a551abefabce6efd0146dce9f rw,seclabel,discard,stripe=16,data=ordered
65 65
     239 35 253:33 / /var/lib/docker/devicemapper/mnt/e9aa60c60128cad1 rw,relatime shared:221 - ext4 /dev/mapper/docker-253:2-425882-e9aa60c60128cad1 rw,seclabel,discard,stripe=16,data=ordered
66 66
     243 35 253:34 / /var/lib/docker/devicemapper/mnt/5fec11304b6f4713fea7b6ccdcc1adc0a1966187f590fe25a8227428a8df275d-init rw,relatime shared:225 - ext4 /dev/mapper/docker-253:2-425882-5fec11304b6f4713fea7b6ccdcc1adc0a1966187f590fe25a8227428a8df275d-init rw,seclabel,discard,stripe=16,data=ordered
67
-    247 35 253:35 / /var/lib/docker/devicemapper/mnt/5fec11304b6f4713fea7b6ccdcc1adc0a1966187f590fe25a8227428a8df275d rw,relatime shared:229 - ext4 /dev/mapper/docker-253:2-425882-5fec11304b6f4713fea7b6ccdcc1adc0a1966187f590fe25a8227428a8df275d rw,seclabel,discard,stripe=16,data=ordered`
67
+    247 35 253:35 / /var/lib/docker/devicemapper/mnt/5fec11304b6f4713fea7b6ccdcc1adc0a1966187f590fe25a8227428a8df275d rw,relatime shared:229 - ext4 /dev/mapper/docker-253:2-425882-5fec11304b6f4713fea7b6ccdcc1adc0a1966187f590fe25a8227428a8df275d rw,seclabel,discard,stripe=16,data=ordered
68
+    31 21 0:23 / /DATA/foo_bla_bla rw,relatime - cifs //foo/BLA\040BLA\040BLA/ rw,sec=ntlm,cache=loose,unc=\\foo\BLA BLA BLA,username=my_login,domain=mydomain.com,uid=12345678,forceuid,gid=12345678,forcegid,addr=10.1.30.10,file_mode=0755,dir_mode=0755,nounix,rsize=61440,wsize=65536,actimeo=1`
68 69
 
69 70
 	ubuntuMountInfo = `15 20 0:14 / /sys rw,nosuid,nodev,noexec,relatime - sysfs sysfs rw
70 71
 16 20 0:3 / /proc rw,nosuid,nodev,noexec,relatime - proc proc rw