Oneshot services's cgroup is removed when the service
exits. An assert is hit otherwise.
---
 src/core/manager.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/core/manager.c b/src/core/manager.c
index 3dffbe2..d27a45f 100644
--- a/src/core/manager.c
+++ b/src/core/manager.c
@@ -2542,7 +2542,8 @@ void manager_check_finished(Manager *m) {
         }
 
         SET_FOREACH(u, m->startup_units, i)
-                cgroup_context_apply(unit_get_cgroup_context(u), 
unit_get_cgroup_mask(u), u->cgroup_path, manager_state(m));
+                if (u && u->cgroup_path)
+                        cgroup_context_apply(unit_get_cgroup_context(u), 
unit_get_cgroup_mask(u), u->cgroup_path, manager_state(m));
 
         bus_manager_send_finished(m, firmware_usec, loader_usec, kernel_usec, 
initrd_usec, userspace_usec, total_usec);
 
-- 
1.7.10.4

_______________________________________________
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel

Reply via email to