core: try to continue if coldplugging of a unit fails
authorLennart Poettering <lennart@poettering.net>
Tue, 10 Nov 2015 19:38:30 +0000 (20:38 +0100)
committerLennart Poettering <lennart@poettering.net>
Tue, 10 Nov 2015 20:03:49 +0000 (21:03 +0100)
src/core/unit.c

index 6c130d4..ae019c7 100644 (file)
@@ -2890,7 +2890,7 @@ int unit_add_node_link(Unit *u, const char *what, bool wants) {
 }
 
 int unit_coldplug(Unit *u) {
-        int r;
+        int r = 0, q = 0;
 
         assert(u);
 
@@ -2901,17 +2901,16 @@ int unit_coldplug(Unit *u) {
 
         u->coldplugged = true;
 
-        if (UNIT_VTABLE(u)->coldplug) {
+        if (UNIT_VTABLE(u)->coldplug)
                 r = UNIT_VTABLE(u)->coldplug(u);
-                if (r < 0)
-                        return r;
-        }
 
-        if (u->job) {
-                r = job_coldplug(u->job);
-                if (r < 0)
-                        return r;
-        }
+        if (u->job)
+                q = job_coldplug(u->job);
+
+        if (r < 0)
+                return r;
+        if (q < 0)
+                return q;
 
         return 0;
 }