diff options
-rw-r--r-- | include/signal.h | 7 | ||||
-rw-r--r-- | libc/signal/sigempty.c | 2 | ||||
-rw-r--r-- | libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c | 4 |
3 files changed, 8 insertions, 5 deletions
diff --git a/include/signal.h b/include/signal.h index c137c3bdb..d8bb5d277 100644 --- a/include/signal.h +++ b/include/signal.h @@ -256,7 +256,6 @@ typedef __sighandler_t sig_t; /* Clear all signals from SET. */ extern int sigemptyset (sigset_t *__set) __THROW __nonnull ((1)); -libc_hidden_proto(sigemptyset) /* Set all signals in SET. */ extern int sigfillset (sigset_t *__set) __THROW __nonnull ((1)); @@ -484,6 +483,12 @@ extern int __libc_current_sigrtmin (void) __THROW; /* Return number of available real-time signal with lowest priority. */ extern int __libc_current_sigrtmax (void) __THROW; +#ifdef _LIBC +/* simplified version without parameter checking */ +# include <string.h> +# undef __sigemptyset +# define __sigemptyset(ss) (memset(ss, '\0', sizeof(sigset_t)), 0) +#endif #endif /* signal.h */ __END_DECLS diff --git a/libc/signal/sigempty.c b/libc/signal/sigempty.c index b4f180bbc..2622c0872 100644 --- a/libc/signal/sigempty.c +++ b/libc/signal/sigempty.c @@ -20,7 +20,6 @@ #include <signal.h> #include <string.h> - /* Clear all signals from SET. */ int sigemptyset (sigset_t *set) { @@ -36,4 +35,3 @@ int sigemptyset (sigset_t *set) return 0; } -libc_hidden_def(sigemptyset) diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c b/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c index 1664af5cf..2f33e9981 100644 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c @@ -49,7 +49,7 @@ timer_sigev_thread (void *arg) surprising for user code, although valid. We unblock all signals. */ sigset_t ss; - sigemptyset (&ss); + __sigemptyset (&ss); INTERNAL_SYSCALL_DECL (err); INTERNAL_SYSCALL (rt_sigprocmask, err, 4, SIG_SETMASK, &ss, NULL, _NSIG / 8); @@ -75,7 +75,7 @@ timer_helper_thread (void *arg) /* Wait for the SIGTIMER signal, allowing the setXid signal, and none else. */ sigset_t ss; - sigemptyset (&ss); + __sigemptyset (&ss); __sigaddset (&ss, SIGTIMER); /* Endless loop of waiting for signals. The loop is only ended when |