diff options
author | Mantas Mikulėnas <grawity@gmail.com> | 2014-03-11 17:49:00 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2014-03-11 17:45:24 +0100 |
commit | 94036de887ad5b0dc805abe38b5c1c58b57d9465 (patch) | |
tree | 47ecc04e64f5a59f8bb17ef4a4a9fcafa1e5b5f8 /src/login/logind-action.c | |
parent | 4de82926892eb1636d0a25cf1e4ab15cab6a6099 (diff) | |
download | systemd-94036de887ad5b0dc805abe38b5c1c58b57d9465.tar.gz |
logind: Do not fail display count if a device has no parent
udev_device_get_parent() may return NULL when the device doesn't have a
parent, as is the case with (for example) /sys/devices/virtual/drm/ttm.
Also, log an actual error message instead of "-12 displays connected".
Diffstat (limited to 'src/login/logind-action.c')
-rw-r--r-- | src/login/logind-action.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/login/logind-action.c b/src/login/logind-action.c index ae7b35055a..1928f43cd1 100644 --- a/src/login/logind-action.c +++ b/src/login/logind-action.c @@ -84,7 +84,9 @@ int manager_handle_action( * treat like this under the assumption that there is * no modern drm driver available. */ n = manager_count_displays(m); - if (n != 1) { + if (n < 0) + log_warning("Display counting failed: %s", strerror(-n)); + else if (n != 1) { log_debug("Ignoring lid switch request, %i displays connected.", n); return 0; } |