• unknown's avatar
    Bug #26564: Windows implementation of pthread_join crashes · 76295d4b
    unknown authored
    MySQL uses _beginthread()/_endthread() instead of 
    _beginthreadex()/_endthreadex() to create/end its threads
    on Windows.
    According to MSDN  _endthread() does close the thread handle.
    So there's no need the handle to be closed explicitly.
    Besides : WaitForSingleObject(, INFINITE) != WAIT_OBJECT_0) is
    true for all practical cases as the other two possible return 
    codes (according to MSDN) cannot happen in that case the 
    CloseHandle() was actually a dead code.
    Fixed by removing the CloseHandle() call. No test case added
    because it's not possible to test for absence of dead code. 
    
    
    include/my_pthread.h:
      Bug #26564: Don't call CloseHandle since we use 
      beginthread/endthread instead of beginthreadex/endthreadex.
    76295d4b
my_pthread.h 26.3 KB