diff options
author | Lennart Poettering <lennart@poettering.net> | 2013-01-14 21:40:38 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2013-01-14 21:41:41 +0100 |
commit | 1ca04b87979b2add53ebb8a7fdf13c34fb6c2743 (patch) | |
tree | eddd94f1b3e59a5fae8d5779cdcde8b47ec36f05 | |
parent | aca26b52200a4666c9f80a942150a90004130010 (diff) |
logind: ignore non-tty/non-x11 session when checking if there are other sessions before shutting down
https://bugzilla.redhat.com/show_bug.cgi?id=890827
-rw-r--r-- | src/login/logind-dbus.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c index 77a06f2ce4..d64debe51f 100644 --- a/src/login/logind-dbus.c +++ b/src/login/logind-dbus.c @@ -979,9 +979,12 @@ static int have_multiple_sessions( assert(m); - /* Check for other users' sessions. Greeter sessions do not count. */ + /* Check for other users' sessions. Greeter sessions do not + * count, and non-login sessions do not count either. */ HASHMAP_FOREACH(session, m->sessions, i) - if (session->class == SESSION_USER && session->user->uid != uid) + if (session->class == SESSION_USER && + (session->type == SESSION_TTY || session->type == SESSION_X11) && + session->user->uid != uid) return true; return false; |