From 7faf3caa21e0dbdd65478cd93cd5da8fe29f3448 Mon Sep 17 00:00:00 2001 From: Fredrik Noring <noring@nocrew.org> Date: Wed, 17 Jun 1998 11:05:16 +0200 Subject: [PATCH] Added signal handler approximation from Pike 0.5. Rev: src/signal_handler.c:1.69 --- src/signal_handler.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/signal_handler.c b/src/signal_handler.c index a11c856939..ebce1377df 100644 --- a/src/signal_handler.c +++ b/src/signal_handler.c @@ -22,7 +22,7 @@ #include "builtin_functions.h" #include <signal.h> -RCSID("$Id: signal_handler.c,v 1.68 1998/06/08 12:48:28 grubba Exp $"); +RCSID("$Id: signal_handler.c,v 1.69 1998/06/17 09:05:16 noring Exp $"); #ifdef HAVE_PASSWD_H # include <passwd.h> @@ -367,10 +367,13 @@ static RETSIGTYPE receive_signal(int signum) { int tmp; -#ifdef DEBUG - if(signum<0 || signum>=MAX_SIGNALS) - fatal("Received signal %u >= %u!!!\n", signum, MAX_SIGNALS); -#endif + if ((signum < 0) || (signum >= MAX_SIGNALS)) { + /* Some OSs (Solaris 2.6) send a bad signum sometimes. + * SIGCHLD is the safest signal to substitute. + * /grubba 1998-05-19 + */ + signum = SIGCHLD; + } tmp=firstsig+1; if(tmp == SIGNAL_BUFFER) tmp=0; -- GitLab