summaryrefslogtreecommitdiff
path: root/src/process.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/process.c')
-rw-r--r--src/process.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/process.c b/src/process.c
index a527066277b..ef00094401c 100644
--- a/src/process.c
+++ b/src/process.c
@@ -1167,7 +1167,7 @@ SIGTYPE
create_process_1 (signo)
int signo;
{
-#ifdef USG
+#if defined(USG) && !defined(POSIX_SIGNALS)
/* USG systems forget handlers when they are used;
must reestablish each time */
signal (signo, create_process_1);
@@ -3352,7 +3352,7 @@ sigchld_handler (signo)
/* USG systems forget handlers when they are used;
must reestablish each time */
-#ifdef USG
+#if defined(USG) && !defined(POSIX_SIGNALS)
signal (signo, sigchld_handler); /* WARNING - must come after wait3() */
#endif
#ifdef BSD4_1
@@ -3460,7 +3460,7 @@ sigchld_handler (signo)
Otherwise (on systems that have WNOHANG), loop around
to use up all the processes that have something to tell us. */
#if defined (USG) && ! (defined (HPUX) && defined (WNOHANG)) || defined (WINDOWSNT)
-#ifdef USG
+# if defined (USG) && ! defined(POSIX_SIGNALS)
signal (signo, sigchld_handler);
#endif
errno = old_errno;