X-Git-Url: https://pd.if.org/git/?p=pdclib;a=blobdiff_plain;f=platform%2Fwin32%2Ffunctions%2Fthreads%2Fmtx_trylock.c;h=4308fb16d9197ce0c37fbc17c93eadba8e1a5e29;hp=753dd6e12a4671564d242086e738b8448d57d62f;hb=abc15df6b9fae3374d24c7cf5c3ab94c605b2a6d;hpb=8894c921674bb116d0a7b8f23a55311e7a768019 diff --git a/platform/win32/functions/threads/mtx_trylock.c b/platform/win32/functions/threads/mtx_trylock.c index 753dd6e..4308fb1 100644 --- a/platform/win32/functions/threads/mtx_trylock.c +++ b/platform/win32/functions/threads/mtx_trylock.c @@ -1,33 +1,33 @@ -#ifndef REGTEST -#include -#include - -int mtx_trylock(mtx_t *mtx) -{ - DWORD myId = GetCurrentThreadId(); - - if(mtx->_ThreadId == (long) myId) { - mtx->_NestCount++; - return thrd_success; - } - - if(mtx->_ThreadId != 0) - return thrd_busy; - - LONG prev = InterlockedCompareExchange(&mtx->_ThreadId, myId, 0); - if(prev == 0) - return thrd_success; - else - return thrd_busy; -} -#endif - -#ifdef TEST -#include "_PDCLIB_test.h" - -int main( void ) -{ - return TEST_RESULTS; -} - +#ifndef REGTEST +#include +#include + +int mtx_trylock(mtx_t *mtx) +{ + DWORD myId = GetCurrentThreadId(); + + if(mtx->_ThreadId == (long) myId) { + mtx->_NestCount++; + return thrd_success; + } + + if(mtx->_ThreadId != 0) + return thrd_busy; + + LONG prev = InterlockedCompareExchange(&mtx->_ThreadId, myId, 0); + if(prev == 0) + return thrd_success; + else + return thrd_busy; +} +#endif + +#ifdef TEST +#include "_PDCLIB_test.h" + +int main( void ) +{ + return TEST_RESULTS; +} + #endif \ No newline at end of file