diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2017-02-28 23:03:12 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-02-28 23:03:12 -0500 |
commit | 92d6f2f34895a5f126493a2fd7ff8fb660a84a22 (patch) | |
tree | db6a99b5d88c09f81c2537c7c5025be1aa1e5312 /src | |
parent | 3401f0e145b2ecb2f7bf3cd68042390d9090c937 (diff) | |
parent | a625def6ea3e6fb1ad78f40a9ff4454c4da79aca (diff) |
Merge pull request #5494 from poettering/run-fixes
systemd-run --user fixes.
Diffstat (limited to 'src')
-rw-r--r-- | src/core/dbus-unit.c | 4 | ||||
-rw-r--r-- | src/core/unit.c | 1 | ||||
-rw-r--r-- | src/run/run.c | 3 |
3 files changed, 4 insertions, 4 deletions
diff --git a/src/core/dbus-unit.c b/src/core/dbus-unit.c index f1306a023f..f15bb2196c 100644 --- a/src/core/dbus-unit.c +++ b/src/core/dbus-unit.c @@ -1131,7 +1131,7 @@ void bus_unit_send_change_signal(Unit *u) { if (!u->id) return; - r = bus_foreach_bus(u->manager, NULL, u->sent_dbus_new_signal ? send_changed_signal : send_new_signal, u); + r = bus_foreach_bus(u->manager, u->bus_track, u->sent_dbus_new_signal ? send_changed_signal : send_new_signal, u); if (r < 0) log_unit_debug_errno(u, r, "Failed to send unit change signal for %s: %m", u->id); @@ -1177,7 +1177,7 @@ void bus_unit_send_removed_signal(Unit *u) { if (!u->id) return; - r = bus_foreach_bus(u->manager, NULL, send_removed_signal, u); + r = bus_foreach_bus(u->manager, u->bus_track, send_removed_signal, u); if (r < 0) log_unit_debug_errno(u, r, "Failed to send unit remove signal for %s: %m", u->id); } diff --git a/src/core/unit.c b/src/core/unit.c index 174dd42819..b091a0999b 100644 --- a/src/core/unit.c +++ b/src/core/unit.c @@ -402,6 +402,7 @@ void unit_add_to_dbus_queue(Unit *u) { /* Shortcut things if nobody cares */ if (sd_bus_track_count(u->manager->subscribed) <= 0 && + sd_bus_track_count(u->bus_track) <= 0 && set_isempty(u->manager->private_buses)) { u->sent_dbus_new_signal = true; return; diff --git a/src/run/run.c b/src/run/run.c index f8257abc93..2e6765aa18 100644 --- a/src/run/run.c +++ b/src/run/run.c @@ -497,7 +497,7 @@ static int transient_service_set_properties(sd_bus_message *m, char **argv, cons if (r < 0) return r; - if (arg_wait) { + if (arg_wait || arg_pty) { r = sd_bus_message_append(m, "(sv)", "AddRef", "b", 1); if (r < 0) return r; @@ -1026,7 +1026,6 @@ static int start_transient_service( pty_forward_set_handler(c.forward, pty_forward_handler, &c); } - path = unit_dbus_path_from_name(service); if (!path) return log_oom(); |