diff options
author | William Hubbs <w.d.hubbs@gmail.com> | 2017-09-18 16:59:18 -0500 |
---|---|---|
committer | William Hubbs <w.d.hubbs@gmail.com> | 2017-09-18 16:59:18 -0500 |
commit | 1cac8b080c16f9aab19c7a3ae1ca155c20dfa14d (patch) | |
tree | e40b8b5575ed05ad03bb0299687d3d08b7b98820 | |
parent | b58194ef63ec8c0a7e0ea3c291da9c19aa83cb1a (diff) |
ignore sigchld when shutting down the supervised process
We need to do this to skip the zombie state for the child process since
we are not easily able to wait() for it.
-rw-r--r-- | src/rc/supervise-daemon.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/rc/supervise-daemon.c b/src/rc/supervise-daemon.c index 09db1912..a781ad9d 100644 --- a/src/rc/supervise-daemon.c +++ b/src/rc/supervise-daemon.c @@ -753,6 +753,7 @@ int main(int argc, char **argv) while (!exiting) { wait(&i); if (exiting) { + signal_setup(SIGCHLD, SIG_IGN); syslog(LOG_INFO, "stopping %s, pid %d", exec, child_pid); nkilled = run_stop_schedule(applet, exec, NULL, child_pid, 0, false, false, true); |