From 72cf1bb9fb80dc4387fe1676f6bfe7633500548e Mon Sep 17 00:00:00 2001 From: "Michael W. Hudson" Date: Wed, 7 Jul 2004 17:44:12 +0000 Subject: This closes patch: [ 960406 ] unblock signals in threads although the changes do not correspond exactly to any patch attached to that report. Non-main threads no longer have all signals masked. A different interface to readline is used. The handling of signals inside calls to PyOS_Readline is now rather different. These changes are all a bit scary! Review and cross-platform testing much appreciated. --- Python/thread_pthread.h | 11 ----------- 1 file changed, 11 deletions(-) (limited to 'Python/thread_pthread.h') diff --git a/Python/thread_pthread.h b/Python/thread_pthread.h index d18d2de725..dd1616c716 100644 --- a/Python/thread_pthread.h +++ b/Python/thread_pthread.h @@ -119,7 +119,6 @@ PyThread_start_new_thread(void (*func)(void *), void *arg) { pthread_t th; int status; - sigset_t oldmask, newmask; #if defined(THREAD_STACK_SIZE) || defined(PTHREAD_SYSTEM_SCHED_SUPPORTED) pthread_attr_t attrs; #endif @@ -137,13 +136,6 @@ PyThread_start_new_thread(void (*func)(void *), void *arg) pthread_attr_setscope(&attrs, PTHREAD_SCOPE_SYSTEM); #endif - /* Mask all signals in the current thread before creating the new - * thread. This causes the new thread to start with all signals - * blocked. - */ - sigfillset(&newmask); - SET_THREAD_SIGMASK(SIG_BLOCK, &newmask, &oldmask); - status = pthread_create(&th, #if defined(THREAD_STACK_SIZE) || defined(PTHREAD_SYSTEM_SCHED_SUPPORTED) &attrs, @@ -154,9 +146,6 @@ PyThread_start_new_thread(void (*func)(void *), void *arg) (void *)arg ); - /* Restore signal mask for original thread */ - SET_THREAD_SIGMASK(SIG_SETMASK, &oldmask, NULL); - #if defined(THREAD_STACK_SIZE) || defined(PTHREAD_SYSTEM_SCHED_SUPPORTED) pthread_attr_destroy(&attrs); #endif -- cgit v1.2.1