From: Ivan Maidanski Date: Sat, 21 Apr 2012 15:57:25 +0000 (+0400) Subject: Fix GC_remove_all_threads_but_me to cleanup thread-specific data storage X-Git-Tag: gc7_3alpha2~13 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fcfae7f;p=gc Fix GC_remove_all_threads_but_me to cleanup thread-specific data storage * pthread_support.c (GC_remove_all_threads_but_me): Call GC_remove_specific after destroying thread-local list. --- diff --git a/pthread_support.c b/pthread_support.c index d86c617f..ca455d76 100644 --- a/pthread_support.c +++ b/pthread_support.c @@ -681,6 +681,7 @@ STATIC void GC_remove_all_threads_but_me(void) # ifdef THREAD_LOCAL_ALLOC if (!(p -> flags & FINISHED)) { GC_destroy_thread_local(&(p->tlfs)); + GC_remove_specific(GC_thread_key); } # endif if (p != &first_thread) GC_INTERNAL_FREE(p);