summaryrefslogtreecommitdiff
path: root/libc/signal/sysv_signal.c
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2008-11-29 16:46:07 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2008-11-29 16:46:07 +0000
commit7357e8836f7c742602f59cc8f2b97382634c59b8 (patch)
tree0c8c736305cb1922b70cd99d4d8e5f80114653e8 /libc/signal/sysv_signal.c
parent35ae1599438a15568818bf09b493d7b49039d452 (diff)
shring sugnal-relared stuff a bit. BTW why constant memset is not inlined by gcc?
text data bss dec hex filename - 38015 18096 8636 64747 fceb lib/libpthread-0.9.30-svn.so + 38001 18096 8636 64733 fcdd lib/libpthread-0.9.30-svn.so - 274842 1835 19012 295689 48309 lib/libuClibc-0.9.30-svn.so + 274779 1835 19012 295626 482ca lib/libuClibc-0.9.30-svn.so
Diffstat (limited to 'libc/signal/sysv_signal.c')
-rw-r--r--libc/signal/sysv_signal.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/libc/signal/sysv_signal.c b/libc/signal/sysv_signal.c
index c0cd19a95..f573482f9 100644
--- a/libc/signal/sysv_signal.c
+++ b/libc/signal/sysv_signal.c
@@ -47,10 +47,8 @@ __sighandler_t __sysv_signal (int sig, __sighandler_t handler)
}
act.sa_handler = handler;
- if (__sigemptyset (&act.sa_mask) < 0)
- return SIG_ERR;
- act.sa_flags = SA_ONESHOT | SA_NOMASK | SA_INTERRUPT;
- act.sa_flags &= ~SA_RESTART;
+ __sigemptyset (&act.sa_mask);
+ act.sa_flags = (SA_ONESHOT | SA_NOMASK | SA_INTERRUPT) & ~SA_RESTART;
if (sigaction (sig, &act, &oact) < 0)
return SIG_ERR;