Fix fork() handling on Cygwin (update child thread Id properly and
authorIvan Maidanski <ivmai@mail.ru>
Sun, 26 Feb 2012 15:55:56 +0000 (19:55 +0400)
committerIvan Maidanski <ivmai@mail.ru>
Sun, 26 Feb 2012 16:49:56 +0000 (20:49 +0400)
commitd11f8ca08204a5f8b44a02b98a4fe79258189029
tree3b9e24f68474bf0eefb62a8dd4e54b50087fd99a
parent8bf44e780f4ed98835c049d5269886bb62179c15
Fix fork() handling on Cygwin (update child thread Id properly and
update child thread-local storage pointer)

* win32_threads.c (GC_remove_all_threads_but_me): Update comment;
re-hash GC_threads map as thread Win32 Id in the child differs from
that in the parent; rename "id" local variable to "pthread_id".
* win32_threads.c (GC_remove_all_threads_but_me): Call
GC_setspecific (if THREAD_LOCAL_ALLOC) to re-assign Win32-based
thread-local pointer to 'tlfs' (identified by GC_thread_key) of the
current thread.
win32_threads.c