From 373e6a512c30b2e34ac4a6f5b154edf45f400b35 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 20 Mar 2001 18:26:06 +0000 Subject: Update. 2001-03-20 Ulrich Drepper * cancel.c (__pthread_perform_cleanup): Call __rpc_thread_destroy. --- linuxthreads/cancel.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'linuxthreads/cancel.c') diff --git a/linuxthreads/cancel.c b/linuxthreads/cancel.c index b05d8bf66e..0ae0d12887 100644 --- a/linuxthreads/cancel.c +++ b/linuxthreads/cancel.c @@ -15,6 +15,7 @@ /* Thread cancellation */ #include +#include #include "pthread.h" #include "internals.h" #include "spinlock.h" @@ -163,6 +164,10 @@ void __pthread_perform_cleanup(void) struct _pthread_cleanup_buffer * c; for (c = THREAD_GETMEM(self, p_cleanup); c != NULL; c = c->__prev) c->__routine(c->__arg); + + /* And the TSD which needs special help. */ + if (THREAD_GETMEM(self, p_libc_specific[_LIBC_TSD_KEY_RPC_VARS]) != NULL) + __rpc_thread_destroy (); } #ifndef SHARED -- cgit v1.2.3