aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1999-01-07 11:53:05 +0000
committerUlrich Drepper <drepper@redhat.com>1999-01-07 11:53:05 +0000
commitb92ad8d61f18a3e9a61434e2e3252efd862bd7f4 (patch)
treea673f7750cb17ce2adaee14e9a8b4855447b6feb /linuxthreads/manager.c
parentUpdate. (diff)
downloadglibc-b92ad8d61f18a3e9a61434e2e3252efd862bd7f4.tar.gz
glibc-b92ad8d61f18a3e9a61434e2e3252efd862bd7f4.tar.bz2
glibc-b92ad8d61f18a3e9a61434e2e3252efd862bd7f4.zip
1999-01-07 Xavier Leroy <Xavier.Leroy@inria.fr>
* pthread.c: Use a third signal __pthread_sig_debug distinct from __pthread_sig_cancel to notify gdb when a thread is created * manager.c: Likewise. * internals.h: Likewise. * signals.c: The implementation of sigwait(s) assumed that all signals in s have signal handlers already attached. This is not required by the standard, so make it work also if some of the signals have no handlers.
Diffstat (limited to 'linuxthreads/manager.c')
-rw-r--r--linuxthreads/manager.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/linuxthreads/manager.c b/linuxthreads/manager.c
index 5a5420d9a9..cf9796ac2e 100644
--- a/linuxthreads/manager.c
+++ b/linuxthreads/manager.c
@@ -161,7 +161,8 @@ int __pthread_manager(void *arg)
break;
case REQ_DEBUG:
/* Make gdb aware of new thread */
- if (__pthread_threads_debug) raise(__pthread_sig_cancel);
+ if (__pthread_threads_debug && __pthread_sig_debug > 0)
+ raise(__pthread_sig_debug);
restart(request.req_thread);
break;
}
@@ -554,7 +555,7 @@ static void pthread_handle_exit(pthread_descr issuing_thread, int exitcode)
_exit(0);
}
-/* Handler for __pthread_sig_restart in thread manager thread */
+/* Handler for __pthread_sig_cancel in thread manager thread */
void __pthread_manager_sighandler(int sig)
{