From: short <> Date: Thu, 19 Apr 2001 17:31:31 +0000 (+0000) Subject: Crossplatformity: Fixed signal(2) reinstall after the signal occured X-Git-Tag: mdsms_1_5_3~21 X-Git-Url: http://git.jankratochvil.net/?p=mdsms.git;a=commitdiff_plain;h=9a4df5c3cec7a35cc8e22efb86c212a75a90c395 Crossplatformity: Fixed signal(2) reinstall after the signal occured --- diff --git a/mdsms.c b/mdsms.c index 03f391f..711aee3 100644 --- a/mdsms.c +++ b/mdsms.c @@ -1638,6 +1638,9 @@ static void signal_chld(int signo) int status; pid_t pid; + signal(SIGCHLD,(RETSIGTYPE (*)(int))signal_chld); + /* we don't care about siginterrupt(3) as it doesn't matter how it is set */ + d2("signal_chld: signo=%d\n",signo); while (0<(pid=waitpid(-1 /* ANY process */,&status,WNOHANG /* options */))) { if (verbose>=2) @@ -1655,7 +1658,7 @@ int i; FILE *f; d2("receive_text: %s\n",bodyline); - signal(SIGCHLD,signal_chld); + signal(SIGCHLD,(RETSIGTYPE (*)(int))signal_chld); #if RECEIVE_TEST pid=0; #else