Commit a177756b by Carlos Martin Nieto

win32: free thread-local data on thread exit

parent de143efa
...@@ -224,6 +224,20 @@ void git__free_tls_data(void) ...@@ -224,6 +224,20 @@ void git__free_tls_data(void)
TlsSetValue(_tls_index, NULL); TlsSetValue(_tls_index, NULL);
} }
BOOL WINAPI DllMain(HINSTANCE hInstDll, DWORD fdwReason, LPVOID lpvReserved)
{
/* This is how Windows lets us know our thread is being shut down */
if (fdwReason == DLL_THREAD_DETACH) {
git__free_tls_data();
}
/*
* Windows pays attention to this during library loading. We don't do anything
* so we trivially succeed.
*/
return TRUE;
}
#elif defined(GIT_THREADS) && defined(_POSIX_THREADS) #elif defined(GIT_THREADS) && defined(_POSIX_THREADS)
static pthread_key_t _tls_key; static pthread_key_t _tls_key;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment