summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Herrmann <dh.herrmann@gmail.com>2015-09-21 19:59:07 +0200
committerDavid Herrmann <dh.herrmann@gmail.com>2015-09-21 20:03:24 +0200
commit7ff307bc4cc81440e9ac4a2ca09c6100d76ca89a (patch)
tree82c3475724c1322d02ec6ec1ed979b90b8829721
parentde45f28e0901fb60bcda8e2ce60a13d11400d0b1 (diff)
mount: propagate error codes correctly
Make sure to propagate error codes from mount-loops correctly. Right now, we return the return-code of the first mount that did _something_. This is not what we want. Make sure we return an error if _any_ mount fails (and then make sure to return the first error to not hide proper errors due to consequential errors like -ENOTDIR). Reported by cee1 <fykcee1@gmail.com>.
-rw-r--r--src/core/mount-setup.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/core/mount-setup.c b/src/core/mount-setup.c
index 65f3d06ad0..9b16eaa0e2 100644
--- a/src/core/mount-setup.c
+++ b/src/core/mount-setup.c
@@ -208,7 +208,7 @@ int mount_setup_early(void) {
int j;
j = mount_one(mount_table + i, false);
- if (r == 0)
+ if (j != 0 && r >= 0)
r = j;
}
@@ -351,7 +351,7 @@ int mount_setup(bool loaded_policy) {
int j;
j = mount_one(mount_table + i, loaded_policy);
- if (r == 0)
+ if (j != 0 && r >= 0)
r = j;
}