X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fdbus-unit.c;h=63301a08243d6025ed2f8afb7e808d2f21ba262b;hp=17ca7bdd8965bc51dd5da46fc5e60496c9457195;hb=ed4c1cc672560b72aa1c5a74cd692a65811dd589;hpb=5e8d1c9a9f15b7453474dc4879bdb4021c3f50a1 diff --git a/src/dbus-unit.c b/src/dbus-unit.c index 17ca7bdd8..63301a082 100644 --- a/src/dbus-unit.c +++ b/src/dbus-unit.c @@ -272,6 +272,8 @@ static DBusHandlerResult bus_unit_message_dispatch(Unit *u, DBusConnection *conn job_type = JOB_RELOAD; else if (dbus_message_is_method_call(message, "org.freedesktop.systemd1.Unit", "Restart")) job_type = JOB_RESTART; + else if (dbus_message_is_method_call(message, "org.freedesktop.systemd1.Unit", "TryRestart")) + job_type = JOB_TRY_RESTART; else if (UNIT_VTABLE(u)->bus_message_handler) return UNIT_VTABLE(u)->bus_message_handler(u, connection, message); else @@ -376,7 +378,7 @@ void bus_unit_send_change_signal(Unit *u) { LIST_REMOVE(Meta, dbus_queue, u->meta.manager->dbus_unit_queue, &u->meta); u->meta.in_dbus_queue = false; - if (set_isempty(u->meta.manager->subscribed)) { + if (!bus_has_subscriber(u->meta.manager)) { u->meta.sent_dbus_new_signal = true; return; } @@ -427,7 +429,7 @@ void bus_unit_send_removed_signal(Unit *u) { assert(u); - if (set_isempty(u->meta.manager->subscribed)) + if (!bus_has_subscriber(u->meta.manager)) return; if (!u->meta.sent_dbus_new_signal)