chiark / gitweb /
manager: when breaking ordering cycle show full cycle loop
[elogind.git] / src / dbus-job.c
index 653e11d18c9ed0e9d2f654ce7c1b07fdf799b93c..4572589cd3697548a4ad9c0d8777af6f41f03377 100644 (file)
@@ -172,10 +172,11 @@ void bus_job_send_change_signal(Job *j) {
         DBusMessage *m = NULL;
 
         assert(j);
-        assert(j->in_dbus_queue);
 
-        LIST_REMOVE(Job, dbus_queue, j->manager->dbus_job_queue, j);
-        j->in_dbus_queue = false;
+        if (j->in_dbus_queue) {
+                LIST_REMOVE(Job, dbus_queue, j->manager->dbus_job_queue, j);
+                j->in_dbus_queue = false;
+        }
 
         if (!bus_has_subscriber(j->manager) && !j->bus_client) {
                 j->sent_dbus_new_signal = true;