diff options
author | Jakub Jelinek <jakub@redhat.com> | 2005-08-24 07:23:32 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2005-08-24 07:23:32 +0000 |
commit | 8bf34d8a27ffed48c7a43b7c7347235d389b0946 (patch) | |
tree | 36a2efd2a73c3d642829770b47f753e0160dd411 /nptl/sysdeps | |
parent | d2b0f6344275bc3624e47a4d02b67a7e131f6f56 (diff) | |
download | glibc-8bf34d8a27ffed48c7a43b7c7347235d389b0946.tar glibc-8bf34d8a27ffed48c7a43b7c7347235d389b0946.tar.gz glibc-8bf34d8a27ffed48c7a43b7c7347235d389b0946.tar.bz2 glibc-8bf34d8a27ffed48c7a43b7c7347235d389b0946.zip |
Updated to fedora-glibc-20050824T0705
Diffstat (limited to 'nptl/sysdeps')
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/timer_routines.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/nptl/sysdeps/unix/sysv/linux/timer_routines.c b/nptl/sysdeps/unix/sysv/linux/timer_routines.c index 23c800f98e..c180b27c96 100644 --- a/nptl/sysdeps/unix/sysv/linux/timer_routines.c +++ b/nptl/sysdeps/unix/sysv/linux/timer_routines.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2003, 2004 Free Software Foundation, Inc. +/* Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@redhat.com>, 2003. @@ -53,10 +53,11 @@ timer_sigev_thread (void *arg) static void * timer_helper_thread (void *arg) { - /* Wait for the SIGTIMER signal and none else. */ + /* Wait for the SIGTIMER signal, allowing the setXid signal, and + none else. */ sigset_t ss; sigemptyset (&ss); - sigaddset (&ss, SIGTIMER); + __sigaddset (&ss, SIGTIMER); /* Endless loop of waiting for signals. The loop is only ended when the thread is canceled. */ @@ -121,10 +122,11 @@ __start_helper_thread (void) (void) pthread_attr_init (&attr); (void) pthread_attr_setstacksize (&attr, PTHREAD_STACK_MIN); - /* Block all signals in the helper thread. To do this thoroughly we - temporarily have to block all signals here. The helper can lose - wakeups if SIGCANCEL is not blocked throughout, but sigfillset omits - it. So, we add it back explicitly here. */ + /* Block all signals in the helper thread but SIGSETXID. To do this + thoroughly we temporarily have to block all signals here. The + helper can lose wakeups if SIGCANCEL is not blocked throughout, + but sigfillset omits it SIGSETXID. So, we add SIGCANCEL back + explicitly here. */ sigset_t ss; sigset_t oss; sigfillset (&ss); |