]> granicus.if.org Git - postgresql/commitdiff
Specify SA_NOCLDSTOP when enabling SIGCHLD, per suggestion from
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 15 Aug 2004 05:25:10 +0000 (05:25 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 15 Aug 2004 05:25:10 +0000 (05:25 +0000)
Oliver Jowett.

src/backend/libpq/pqsignal.c
src/interfaces/libpq/pqsignal.c

index 468c062aa4330cf041c125ea767cae8cb7fb00a5..289f43a98e9da3999d8ca7910c47f4f64e25a93e 100644 (file)
@@ -9,7 +9,7 @@
  *
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/backend/libpq/pqsignal.c,v 1.34 2004/05/29 22:48:19 tgl Exp $
+ *       $PostgreSQL: pgsql/src/backend/libpq/pqsignal.c,v 1.35 2004/08/15 05:25:10 tgl Exp $
  *
  * NOTES
  *             This shouldn't be in libpq, but the monitor and some other
@@ -159,6 +159,10 @@ pqsignal(int signo, pqsigfunc func)
        act.sa_flags = 0;
        if (signo != SIGALRM)
                act.sa_flags |= SA_RESTART;
+#ifdef SA_NOCLDSTOP
+       if (signo == SIGCHLD)
+               act.sa_flags |= SA_NOCLDSTOP;
+#endif
        if (sigaction(signo, &act, &oact) < 0)
                return SIG_ERR;
        return oact.sa_handler;
index dca69cd727c0992a72e197c3af0a71499c79cbca..59654149b410cba250cf40a613f78cc509aeb1b0 100644 (file)
@@ -9,7 +9,7 @@
  *
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/interfaces/libpq/pqsignal.c,v 1.20 2004/02/02 00:11:31 momjian Exp $
+ *       $PostgreSQL: pgsql/src/interfaces/libpq/pqsignal.c,v 1.21 2004/08/15 05:25:10 tgl Exp $
  *
  * NOTES
  *             This shouldn't be in libpq, but the monitor and some other
@@ -35,6 +35,10 @@ pqsignal(int signo, pqsigfunc func)
        act.sa_flags = 0;
        if (signo != SIGALRM)
                act.sa_flags |= SA_RESTART;
+#ifdef SA_NOCLDSTOP
+       if (signo == SIGCHLD)
+               act.sa_flags |= SA_NOCLDSTOP;
+#endif
        if (sigaction(signo, &act, &oact) < 0)
                return SIG_ERR;
        return oact.sa_handler;