summaryrefslogtreecommitdiff
path: root/src/login
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2014-03-10 08:25:15 -0400
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2014-03-10 10:43:47 -0400
commit055d406624cb9e01963558767420b71e5f75d2d3 (patch)
tree9b269d05ebc3ebe7096a1a37b9af666e41f938de /src/login
parent2658624399b22a9c4a345a22c69886dc9417f801 (diff)
logind: fix policykit checks
Diffstat (limited to 'src/login')
-rw-r--r--src/login/logind-dbus.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c
index c9c58f3f8..235b1313d 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);