diff options
author | Ulrich Drepper <drepper@redhat.com> | 2003-09-17 05:04:16 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2003-09-17 05:04:16 +0000 |
commit | a243f94e3636a48142e93dffb4f919f4595f91e8 (patch) | |
tree | 2d74b570a88632dd5426c60f21245c88f444e242 /linuxthreads/sighandler.c | |
parent | 65947215c78a870c9e0b0217a7bd949164e1993b (diff) | |
download | glibc-a243f94e3636a48142e93dffb4f919f4595f91e8.zip glibc-a243f94e3636a48142e93dffb4f919f4595f91e8.tar.gz glibc-a243f94e3636a48142e93dffb4f919f4595f91e8.tar.bz2 |
Update.
2003-09-17 Jakub Jelinek <jakub@redhat.com>
* pthread.c (manager_thread): Remove static, add attribute_hidden.
(thread_self_stack): Rename to...
(__pthread_self_stack): ... this. Remove static.
(pthread_handle_sigcancel): Use check_thread_self ().
(pthread_handle_sigrestart): Likewise.
* sighandler.c (__pthread_sighandler, __pthread_sighandler_rt):
Likewise.
* descr.h (manager_thread): Declare.
* internals.h (__pthread_self_stack): New prototype.
(__manager_thread): Define.
(check_thread_self): New function.
Diffstat (limited to 'linuxthreads/sighandler.c')
-rw-r--r-- | linuxthreads/sighandler.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/linuxthreads/sighandler.c b/linuxthreads/sighandler.c index ab8b38e..9dd3e22 100644 --- a/linuxthreads/sighandler.c +++ b/linuxthreads/sighandler.c @@ -22,7 +22,8 @@ void __pthread_sighandler(int signo, SIGCONTEXT ctx) { pthread_descr self; char * in_sighandler; - self = thread_self(); + self = check_thread_self(); + /* If we're in a sigwait operation, just record the signal received and return without calling the user's handler */ if (THREAD_GETMEM(self, p_sigwaiting)) { @@ -46,7 +47,8 @@ void __pthread_sighandler_rt(int signo, struct siginfo *si, { pthread_descr self; char * in_sighandler; - self = thread_self(); + self = check_thread_self(); + /* If we're in a sigwait operation, just record the signal received and return without calling the user's handler */ if (THREAD_GETMEM(self, p_sigwaiting)) { |