core: fix mount setup to work with non-existing mount points
authorDavid Herrmann <dh.herrmann@gmail.com>
Tue, 7 Apr 2015 12:03:44 +0000 (14:03 +0200)
committerDavid Herrmann <dh.herrmann@gmail.com>
Tue, 7 Apr 2015 12:03:44 +0000 (14:03 +0200)
We must not fail on ENOENT. We properly create the mount-point in
mount-setup, so there's really no reason to skip the mount. Make sure we
just skip the mount on unexpected failures or if it's already mounted.

src/core/mount-setup.c

index 71b32d9..23fb0a1 100644 (file)
@@ -157,12 +157,8 @@ static int mount_one(const MountPoint *p, bool relabel) {
                 label_fix(p->where, true, true);
 
         r = path_is_mount_point(p->where, true);
-        if (r == -ENOENT)
-                return 0;
-
-        if (r < 0)
+        if (r < 0 && r != -ENOENT)
                 return r;
-
         if (r > 0)
                 return 0;