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