diff options
-rw-r--r-- | src/login/logind-dbus.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c index c9c58f3f82..235b1313d4 100644 --- a/src/login/logind-dbus.c +++ b/src/login/logind-dbus.c @@ -1480,6 +1480,8 @@ static int method_do_shutdown_or_sleep( action_multiple_sessions, interactive, error, method, m); if (r < 0) return r; + if (r == 0) + return 1; /* No authorization for now, but the async polkit stuff will call us again when it has it */ } if (blocked) { @@ -1487,6 +1489,8 @@ static int method_do_shutdown_or_sleep( action_ignore_inhibit, interactive, error, method, m); if (r < 0) return r; + if (r == 0) + return 1; /* No authorization for now, but the async polkit stuff will call us again when it has it */ } if (!multiple_sessions && !blocked) { @@ -1494,6 +1498,8 @@ static int method_do_shutdown_or_sleep( action, interactive, error, method, m); if (r < 0) return r; + if (r == 0) + return 1; /* No authorization for now, but the async polkit stuff will call us again when it has it */ } r = bus_manager_shutdown_or_sleep_now_or_later(m, unit_name, w, error); |