chiark / gitweb /
ask-password: use kill(PID, 0) before querying a password
[elogind.git] / src / tty-ask-password-agent.c
index 4a29abacbbcc65e91b7b12c8394071f4312695ac..d7e1ebaef69b79cad16083190972ff982f6b743c 100644 (file)
@@ -291,6 +291,13 @@ static int parse_password(const char *filename, char **wall) {
                 }
         }
 
+        if (pid > 0 &&
+            kill(pid, 0) < 0 &&
+            errno == ESRCH) {
+                r = 0;
+                goto finish;
+        }
+
         if (arg_action == ACTION_LIST)
                 printf("'%s' (PID %u)\n", message, pid);
         else if (arg_action == ACTION_WALL) {