dbus: don't hit an assert if we sent a changed signal for something not in the dbus queue (i.e. because it was deleted before it was fully created
This commit is contained in:
parent
90d473a1c0
commit
c0bd0cf7ff
|
@ -172,10 +172,11 @@ void bus_job_send_change_signal(Job *j) {
|
|||
DBusMessage *m = NULL;
|
||||
|
||||
assert(j);
|
||||
assert(j->in_dbus_queue);
|
||||
|
||||
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;
|
||||
|
|
|
@ -371,10 +371,11 @@ void bus_unit_send_change_signal(Unit *u) {
|
|||
DBusMessage *m = NULL;
|
||||
|
||||
assert(u);
|
||||
assert(u->meta.in_dbus_queue);
|
||||
|
||||
if (u->meta.in_dbus_queue) {
|
||||
LIST_REMOVE(Meta, dbus_queue, u->meta.manager->dbus_unit_queue, &u->meta);
|
||||
u->meta.in_dbus_queue = false;
|
||||
}
|
||||
|
||||
if (!bus_has_subscriber(u->meta.manager)) {
|
||||
u->meta.sent_dbus_new_signal = true;
|
||||
|
|
Loading…
Reference in New Issue