plugins: handle corner case when PID file doesn't exist

If we get a notification and the service dies immediately, and also
removes its pid file, we need to take corrective action.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
Joachim Wiberg
2021-04-19 09:45:57 +02:00
parent 7f76202865
commit d82d119729
+5
View File
@@ -91,6 +91,11 @@ static void pidfile_update_conds(char *dir, char *name, uint32_t mask)
pid_t pid;
pid = pid_file_read(pid_file(svc));
if (pid == -1) {
cond_clear(cond);
return;
}
if (pid != svc->pid) {
_d("Forking service %s changed PID from %d to %d",
svc->cmd, svc->pid, pid);