chiark / gitweb /
dbus: be a bit more verbose for bus activation
[elogind.git] / src / unit.c
index c08091942e4728fc5561cccf4216f50a3aadfb40..695044a77f33e9a5e54069bac3fdee518c6cf6a8 100644 (file)
@@ -319,6 +319,10 @@ void unit_free(Unit *u) {
 
         bus_unit_send_removed_signal(u);
 
+        if (u->meta.load_state != UNIT_STUB)
+                if (UNIT_VTABLE(u)->done)
+                        UNIT_VTABLE(u)->done(u);
+
         /* Detach from next 'bigger' objects */
         SET_FOREACH(t, u->meta.names, i)
                 hashmap_remove_value(u->meta.manager->units, t, u);
@@ -344,10 +348,6 @@ void unit_free(Unit *u) {
         if (u->meta.job)
                 job_free(u->meta.job);
 
-        if (u->meta.load_state != UNIT_STUB)
-                if (UNIT_VTABLE(u)->done)
-                        UNIT_VTABLE(u)->done(u);
-
         cgroup_bonding_free_list(u->meta.cgroup_bondings);
 
         for (d = 0; d < _UNIT_DEPENDENCY_MAX; d++)