chiark / gitweb /
machined: split out machine registration stuff from logind
[elogind.git] / src / login / logind-user.c
index 316c4cd0956c290da578f1afaef39b3830f95dbc..fb961bf64b9f97fe728d72263d72490c6458c422 100644 (file)
@@ -354,11 +354,11 @@ static int user_start_slice(User *u) {
         if (r < 0) {
                 log_error("Failed to start user slice: %s", bus_error(&error, r));
                 dbus_error_free(&error);
+        } else {
+                free(u->slice_job);
+                u->slice_job = job;
         }
 
-        free(u->slice_job);
-        u->slice_job = job;
-
         return 0;
 }
 
@@ -388,11 +388,11 @@ static int user_start_service(User *u) {
         if (r < 0) {
                 log_error("Failed to start user service: %s", bus_error(&error, r));
                 dbus_error_free(&error);
+        } else {
+                free(u->service_job);
+                u->service_job = job;
         }
 
-        free(u->service_job);
-        u->service_job = job;
-
         return 0;
 }