mirror of
https://github.com/systemd/systemd.git
synced 2024-12-25 01:34:28 +03:00
dbus: no sync D-Bus connection flushing
Blocking on D-Bus in a system manager could lead to deadlock.
This commit is contained in:
parent
cbd37330bc
commit
9721b19968
@ -1196,7 +1196,9 @@ static void shutdown_connection(Manager *m, DBusConnection *c) {
|
||||
}
|
||||
|
||||
dbus_connection_set_dispatch_status_function(c, NULL, NULL, NULL);
|
||||
dbus_connection_flush(c);
|
||||
/* system manager cannot afford to block on DBus */
|
||||
if (m->running_as != MANAGER_SYSTEM)
|
||||
dbus_connection_flush(c);
|
||||
dbus_connection_close(c);
|
||||
dbus_connection_unref(c);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user