From: David Herrmann Date: Mon, 21 Sep 2015 17:59:07 +0000 (+0200) Subject: mount: propagate error codes correctly X-Git-Tag: v227~108^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7ff307bc4cc81440e9ac4a2ca09c6100d76ca89a;p=thirdparty%2Fsystemd.git 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 . --- diff --git a/src/core/mount-setup.c b/src/core/mount-setup.c index 65f3d06ad05..9b16eaa0e2d 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; }