]> granicus.if.org Git - gc/commit
Fix assertion violation in return_single_freelist in child process
authorIvan Maidanski <ivmai@mail.ru>
Mon, 28 Aug 2017 08:26:51 +0000 (11:26 +0300)
committerIvan Maidanski <ivmai@mail.ru>
Fri, 29 Sep 2017 21:04:45 +0000 (00:04 +0300)
commite8a559ae27229de750ea2c166f068229528934b2
treef46a3c17fac78207898911b20979bbb776c1ecd7
parentcc14bd089b844086c98105ab18430d7ff83ee3aa
Fix assertion violation in return_single_freelist in child process
(Cherry-pick commit cc6d375 from 'release-7_6' branch.)

Issue #171 (bdwgc).

GC_destroy_thread_local cannot be called from a thread other than
the current one.

* pthread_support.c [CAN_HANDLE_FORK && THREAD_LOCAL_ALLOC]
(GC_remove_all_threads_but_me): Do not call GC_destroy_thread_local;
add comment.
* win32_threads.c [CAN_HANDLE_FORK && THREAD_LOCAL_ALLOC]
(GC_remove_all_threads_but_me): Likewise.
* thread_local_alloc.c [THREAD_LOCAL_ALLOC] (GC_destroy_thread_local):
Update comment.
pthread_support.c
thread_local_alloc.c
win32_threads.c