summary refs log tree commit diff
path: root/linuxthreads
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2004-10-06 08:53:46 +0000
committerUlrich Drepper <drepper@redhat.com>2004-10-06 08:53:46 +0000
commit67060ef581a5e44ced1d08e654f8f63737c51c78 (patch)
tree24c1001a76242d23c029441a4f248c380a7ce9bd /linuxthreads
parentf38a30861e2c2979a6417801c91ca652f2711959 (diff)
downloadglibc-67060ef581a5e44ced1d08e654f8f63737c51c78.tar.gz
glibc-67060ef581a5e44ced1d08e654f8f63737c51c78.tar.xz
glibc-67060ef581a5e44ced1d08e654f8f63737c51c78.zip
2004-10-05  Dwayne Grant McConnell  <dgm69@us.ibm.com>

	* pthread.c: Mask restart signal during cancel signal handler.
Diffstat (limited to 'linuxthreads')
-rw-r--r--linuxthreads/ChangeLog4
-rw-r--r--linuxthreads/pthread.c1
2 files changed, 5 insertions, 0 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog
index a4a4222f7b..56b412b5c6 100644
--- a/linuxthreads/ChangeLog
+++ b/linuxthreads/ChangeLog
@@ -1,3 +1,7 @@
+2004-10-05  Dwayne Grant McConnell  <dgm69@us.ibm.com>
+
+	* pthread.c: Mask restart signal during cancel signal handler.
+
 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
 
 	* sysdeps/unix/sysv/linux/x86_64/bits/posix_opt.h (_POSIX_CPUTIME,
diff --git a/linuxthreads/pthread.c b/linuxthreads/pthread.c
index 6c98d73255..24f0eb02b0 100644
--- a/linuxthreads/pthread.c
+++ b/linuxthreads/pthread.c
@@ -560,6 +560,7 @@ static void pthread_initialize(void)
   sa.sa_flags = 0;
   __libc_sigaction(__pthread_sig_restart, &sa, NULL);
   sa.sa_handler = pthread_handle_sigcancel;
+  sigaddset(&sa.sa_mask, __pthread_sig_restart);
   // sa.sa_flags = 0;
   __libc_sigaction(__pthread_sig_cancel, &sa, NULL);
   if (__pthread_sig_debug > 0) {