summaryrefslogtreecommitdiff
path: root/lib/sigprocmask.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2011-10-07 14:15:00 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2011-10-07 14:15:00 -0700
commitd47439a333a33e01ba4b6695e588fd4ded4fc611 (patch)
tree07654f9076555ea27cd827fc2de1f1524a7ea16b /lib/sigprocmask.c
parent84e8e185cdabbe547cb2b724c2ca1014a73efcfc (diff)
downloademacs-d47439a333a33e01ba4b6695e588fd4ded4fc611.tar.gz
emacs-d47439a333a33e01ba4b6695e588fd4ded4fc611.tar.bz2
emacs-d47439a333a33e01ba4b6695e588fd4ded4fc611.zip
Merge from gnulib, fixing some 'configure' typos (Bug#9696).
* lib/signal.in.h, lib/sigprocmask.c, m4/gl-comp.m4: * m4/gnulib-common.m4: Merge from gnulib. Without this, 'configure' would say "func_gl_gnulib_m4code_pathmax: command not found" on powerpc-apple-darwin9.8.0.
Diffstat (limited to 'lib/sigprocmask.c')
-rw-r--r--lib/sigprocmask.c28
1 files changed, 10 insertions, 18 deletions
diff --git a/lib/sigprocmask.c b/lib/sigprocmask.c
index 6ccac5a8343..e75c7576cdf 100644
--- a/lib/sigprocmask.c
+++ b/lib/sigprocmask.c
@@ -330,27 +330,19 @@ rpl_signal (int sig, handler_t handler)
}
#if GNULIB_defined_SIGPIPE
-/* Raise the signal SIG. */
+/* Raise the signal SIGPIPE. */
int
-rpl_raise (int sig)
-# undef raise
+_gl_raise_SIGPIPE (void)
{
- switch (sig)
+ if (blocked_set & (1U << SIGPIPE))
+ pending_array[SIGPIPE] = 1;
+ else
{
- case SIGPIPE:
- if (blocked_set & (1U << sig))
- pending_array[sig] = 1;
- else
- {
- handler_t handler = SIGPIPE_handler;
- if (handler == SIG_DFL)
- exit (128 + SIGPIPE);
- else if (handler != SIG_IGN)
- (*handler) (sig);
- }
- return 0;
- default: /* System defined signal */
- return raise (sig);
+ handler_t handler = SIGPIPE_handler;
+ if (handler == SIG_DFL)
+ exit (128 + SIGPIPE);
+ else if (handler != SIG_IGN)
+ (*handler) (SIGPIPE);
}
}
#endif