From de0cdbc01cc39e4f89a9d012661031a66ba3294f Mon Sep 17 00:00:00 2001 From: sapier Date: Sat, 30 Nov 2013 21:22:15 +0100 Subject: Fix log threadname lookup handling not beeing threadsafe --- src/jthread/win32/jmutex.cpp | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) (limited to 'src/jthread/win32/jmutex.cpp') diff --git a/src/jthread/win32/jmutex.cpp b/src/jthread/win32/jmutex.cpp index d079d448d..8a31495cd 100644 --- a/src/jthread/win32/jmutex.cpp +++ b/src/jthread/win32/jmutex.cpp @@ -29,7 +29,14 @@ JMutex::JMutex() { - initialized = false; +#ifdef JMUTEX_CRITICALSECTION + InitializeCriticalSection(&mutex); +#else + mutex = CreateMutex(NULL,FALSE,NULL); + if (mutex == NULL) + return ERR_JMUTEX_CANTCREATEMUTEX; +#endif // JMUTEX_CRITICALSECTION + initialized = true; } JMutex::~JMutex() @@ -44,16 +51,6 @@ JMutex::~JMutex() int JMutex::Init() { - if (initialized) - return ERR_JMUTEX_ALREADYINIT; -#ifdef JMUTEX_CRITICALSECTION - InitializeCriticalSection(&mutex); -#else - mutex = CreateMutex(NULL,FALSE,NULL); - if (mutex == NULL) - return ERR_JMUTEX_CANTCREATEMUTEX; -#endif // JMUTEX_CRITICALSECTION - initialized = true; return 0; } -- cgit v1.2.3