]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
bus-util: treat org.freedesktop.DBus.Error.ServiceUnknown nicely when polkit does...
authorYu Watanabe <watanabe.yu+github@gmail.com>
Thu, 4 Apr 2019 04:35:29 +0000 (13:35 +0900)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Thu, 4 Apr 2019 06:06:04 +0000 (08:06 +0200)
Fixes #12209.

src/shared/bus-util.c

index 00120e987414e4d4c7b683d71cbecea7d85414ac..e31fcfbd5a645ad5e784c0d0876d8e391787c4f9 100644 (file)
@@ -410,14 +410,14 @@ int bus_verify_polkit_async(
                 if (sd_bus_message_is_method_error(q->reply, NULL)) {
                         const sd_bus_error *e;
 
-                        /* Copy error from polkit reply */
                         e = sd_bus_message_get_error(q->reply);
-                        sd_bus_error_copy(error, e);
 
                         /* Treat no PK available as access denied */
                         if (sd_bus_error_has_name(e, SD_BUS_ERROR_SERVICE_UNKNOWN))
                                 return -EACCES;
 
+                        /* Copy error from polkit reply */
+                        sd_bus_error_copy(error, e);
                         return -sd_bus_error_get_errno(e);
                 }