diff options
Diffstat (limited to 'mtasim/mtasim.c')
-rw-r--r-- | mtasim/mtasim.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/mtasim/mtasim.c b/mtasim/mtasim.c index f9a85f53..ac751d12 100644 --- a/mtasim/mtasim.c +++ b/mtasim/mtasim.c @@ -660,10 +660,14 @@ stop_mailfromd (void) if (child_pid > 0) { int status; + pid_t pid; + signal (SIGCHLD, SIG_DFL); kill (child_pid, SIGTERM); - waitpid (child_pid, &status, 0); - if (WIFEXITED (status)) + pid = waitpid (child_pid, &status, 0); + if (pid == (pid_t) -1) + mu_error ("waitpid: %s", mu_strerror (errno)); + else if (WIFEXITED (status)) { status = WEXITSTATUS (status); if (status != 0) |