]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
logind: make sure that if we can't figure out whether we are on AC we presume we are
authorLennart Poettering <lennart@poettering.net>
Mon, 22 Oct 2018 11:02:07 +0000 (13:02 +0200)
committerLennart Poettering <lennart@poettering.net>
Fri, 16 Nov 2018 14:39:31 +0000 (15:39 +0100)
It's safer to assume that we are on AC than to assume we are on battery,
if we can't figure it out.

src/login/logind-core.c

index 5608486284bf46c984ed8231f54919d200712048..2bab2fd2f5fe32e88e93b2cf1238aa42d4ef709f 100644 (file)
@@ -681,15 +681,13 @@ bool manager_is_docked_or_external_displays(Manager *m) {
 bool manager_is_on_external_power(void) {
         int r;
 
-        /* For now we only check for AC power, but 'external power' can apply
-         * to anything that isn't an internal battery */
+        /* For now we only check for AC power, but 'external power' can apply to anything that isn't an internal
+         * battery */
         r = on_ac_power();
         if (r < 0)
                 log_warning_errno(r, "Failed to read AC power status: %m");
-        else if (r > 0)
-                return true;
 
-        return false;
+        return r != 0; /* Treat failure as 'on AC' */
 }
 
 bool manager_all_buttons_ignored(Manager *m) {