aboutsummaryrefslogtreecommitdiff
path: root/nptl/sysdeps/pthread
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2006-09-05 17:18:23 +0000
committerUlrich Drepper <drepper@redhat.com>2006-09-05 17:18:23 +0000
commitb051fc4438e7e7ef248a1d03a9b2bd397bc916f3 (patch)
tree0d6d7a6030bafb9f43c5cc2f0a32a1d49a0e7626 /nptl/sysdeps/pthread
parentd052233c6cc886f472736f3cd8f79e4ecf6e0c89 (diff)
downloadglibc-b051fc4438e7e7ef248a1d03a9b2bd397bc916f3.tar
glibc-b051fc4438e7e7ef248a1d03a9b2bd397bc916f3.tar.gz
glibc-b051fc4438e7e7ef248a1d03a9b2bd397bc916f3.tar.bz2
glibc-b051fc4438e7e7ef248a1d03a9b2bd397bc916f3.zip
[BZ #3124]
2006-09-05 Ulrich Drepper <drepper@redhat.com> [BZ #3124] * descr.h (struct pthread): Add parent_cancelhandling. * sysdeps/pthread/createthread.c (create_thread): Pass parent cancelhandling value to child. * pthread_create.c (start_thread): If parent thread was canceled reset the SIGCANCEL mask. * Makefile (tests): Add tst-cancel25. * tst-cancel25.c: New file.
Diffstat (limited to 'nptl/sysdeps/pthread')
-rw-r--r--nptl/sysdeps/pthread/createthread.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/nptl/sysdeps/pthread/createthread.c b/nptl/sysdeps/pthread/createthread.c
index 03a0f1aa37..88658a16e1 100644
--- a/nptl/sysdeps/pthread/createthread.c
+++ b/nptl/sysdeps/pthread/createthread.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003, 2004, 2006 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
@@ -242,6 +242,7 @@ create_thread (struct pthread *pd, const struct pthread_attr *attr,
|| (attr->flags & ATTR_FLAG_NOTINHERITSCHED) != 0))
stopped = true;
pd->stopped_start = stopped;
+ pd->parent_cancelhandling = THREAD_GETMEM (THREAD_SELF, cancelhandling);
/* Actually create the thread. */
int res = do_clone (pd, attr, clone_flags, start_thread,