}\r
\r
mtx->_ThreadId = 0;\r
-\r
- DWORD res = InterlockedDecrement(&mtx->_State);\r
- if(res == (DWORD) -1) {\r
- // We reset the state to -1; success!\r
- return thrd_success;\r
- }\r
-\r
DWORD rv = SetEvent(mtx->_WaitEvHandle);\r
if(rv == 0) {\r
_PDCLIB_w32errno();\r
return thrd_error;\r
}\r
-\r
return thrd_success;\r
}\r
#endif\r