[systemd-commits] src/login

Lennart Poettering lennart at kemper.freedesktop.org
Fri Apr 5 10:00:08 PDT 2013


 src/login/logind-inhibit.c |    7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

New commits:
commit 2c4f86c1298f402220965682ab0e7729e150a562
Author: Lennart Poettering <lennart at poettering.net>
Date:   Fri Apr 5 18:57:58 2013 +0200

    logind: consider key inhibitors that are taken by non-session processes as global
    
    This should allow system services to take over key handling for all
    sessions, globally.

diff --git a/src/login/logind-inhibit.c b/src/login/logind-inhibit.c
index 9994084..c43ae23 100644
--- a/src/login/logind-inhibit.c
+++ b/src/login/logind-inhibit.c
@@ -354,9 +354,14 @@ static int pid_is_active(Manager *m, pid_t pid) {
         int r;
 
         r = manager_get_session_by_pid(m, pid, &s);
-        if (r <= 0)
+        if (r < 0)
                 return r;
 
+        /* If there's no session assigned to it, then it's globally
+         * active on all ttys */
+        if (r == 0)
+                return 1;
+
         return session_is_active(s);
 }
 



More information about the systemd-commits mailing list