diff options
Diffstat (limited to 'linuxthreads')
-rw-r--r-- | linuxthreads/ChangeLog | 6 | ||||
-rw-r--r-- | linuxthreads/signals.c | 6 |
2 files changed, 9 insertions, 3 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog index a67824127e..1551059a4a 100644 --- a/linuxthreads/ChangeLog +++ b/linuxthreads/ChangeLog @@ -1,3 +1,9 @@ +1999-09-19 Ulrich Drepper <drepper@cygnus.com> + + * signals.c (sigaction): Correct last patch. Don't select + pthread_sighandler_rt based on the signal number but instead of + the SA_SIGINFO flag. + 1999-09-18 Ulrich Drepper <drepper@cygnus.com> * pthread.c (pthread_handle_sigrestart_rt): New function. Use diff --git a/linuxthreads/signals.c b/linuxthreads/signals.c index df375e8e46..0c9bffd00b 100644 --- a/linuxthreads/signals.c +++ b/linuxthreads/signals.c @@ -139,10 +139,10 @@ int sigaction(int sig, const struct sigaction * act, if (act->sa_handler != SIG_IGN && act->sa_handler != SIG_DFL && sig > 0 && sig < NSIG) { - if (sig >= SIGRTMIN) - newact.sa_handler = (__sighandler_t) pthread_sighandler_rt; + if (act->sa_flags & SA_SIGINFO) + newact.sa_handler = (__sighandler_t) pthread_sighandler_rt; else - newact.sa_handler = (__sighandler_t) pthread_sighandler; + newact.sa_handler = (__sighandler_t) pthread_sighandler; } newactp = &newact; } |