diff --git a/src/xpdev/rwlockwrap.c b/src/xpdev/rwlockwrap.c index 5015c1a9703dc9f12d2d07306a18690982987ca5..e1fcd3eba757bde31c067c44011a4a209f2755bc 100644 --- a/src/xpdev/rwlockwrap.c +++ b/src/xpdev/rwlockwrap.c @@ -6,7 +6,7 @@ #elif defined(_WIN32) -bool +BOOL rwlock_init(rwlock_t *lock) { InitializeCriticalSection(&lock->lk); @@ -17,7 +17,7 @@ rwlock_init(rwlock_t *lock) writer = (DWORD)-1; } -bool +BOOL rwlock_rdlock(rwlock_t *lock) { DWORD obj; @@ -43,29 +43,29 @@ rwlock_rdlock(rwlock_t *lock) lock->readers++; LeaveCriticalSection(&lock->lk); LeaveCriticalSection(&lock->wlk); - return true; + return TRUE; } } lock->readers++; LeaveCriticalSection(&lock->lk); - return true; + return TRUE; } -bool +BOOL rwlock_tryrdlock(rwlock_t *lock) { - bool ret = false; + BOOL ret = FALSE; EnterCriticalSection(&lock->lk); if (lock->writers == 0 && lock->writers_waiting == 0) { lock->readers++; - ret = true; + ret = TRUE; } LeaveCriticalSection(&lock->lk); return ret; } -bool +BOOL rwlock_wrlock(rwlock_t *lock) { EnterCriticalSection(&lock->lk); @@ -80,14 +80,14 @@ rwlock_wrlock(rwlock_t *lock) lock->writer = GetCurrentThreadId(); LeaveCriticalSection(&lock->lk); // Keep holding wlk - return true; + return TRUE; } LeaveCriticalSection(&lock->lk); LeaveCriticalSection(&lock->wlk); - return false; + return FALSE; } -bool +BOOL rwlock_trywrlock(rwlock_t *lock) { if (TryEnterCriticalSection(&lock->wlk)) { @@ -97,35 +97,35 @@ rwlock_trywrlock(rwlock_t *lock) lock->writers++; lock->writer = GetCurrentThreadId(); LeaveCriticalSection(&lock->lk); - return true; + return TRUE; } LeaveCriticalSection(&lock->lk); LeaveCriticalSection(&lock->wlk); - return false; + return FALSE; } - return false; + return FALSE; } -bool +BOOL rwlock_unlock(rwlock_t *lock) { - bool ret = false; + BOOL ret = FALSE; EnterCriticalSection(&lock->lk); if (lock->writers) { if (lock->writer == GetCurrentThreadId()) { lock->writers--; LeaveCriticalSection(&lock->lk); LeaveCriticalSection(&lock->wlk); - return true; + return TRUE; } LeaveCriticalSection(&lock->lk); - return false; + return FALSE; } if (lock->readers) { lock->readers--; - return true; + return TRUE; } - return false; + return FALSE; } #elif defined(__unix__) diff --git a/src/xpdev/rwlockwrap.h b/src/xpdev/rwlockwrap.h index c9058e7ac7d63864257e512733a7ff976aa6856c..12cea2e14b1970df17967d10513ceb02f340a1f8 100644 --- a/src/xpdev/rwlockwrap.h +++ b/src/xpdev/rwlockwrap.h @@ -4,7 +4,6 @@ #if defined(__unix__) #include <pthread.h> -#include <stdbool.h> typedef pthread_rwlock_t rwlock_t; #define rwlock_init(lock) (pthread_rwlock_init(lock, NULL) == 0) @@ -20,11 +19,7 @@ typedef pthread_rwlock_t rwlock_t; #elif defined(_WIN32) -#ifdef __MINGW32__ -#include <stdbool.h> -#endif - -#include "gen_defs.h" // For windows.h and bool :( +#include "gen_defs.h" // For windows.h and BOOL!! :( #include "threadwrap.h" typedef struct { @@ -36,12 +31,12 @@ typedef struct { DWORD writer; } rwlock_t; -bool rwlock_init(rwlock_t *lock); -bool rwlock_rdlock(rwlock_t *lock); -bool rwlock_tryrdlock(rwlock_t *lock); -bool rwlock_wrlock(rwlock_t *lock); -bool rwlock_trywrlock(rwlock_t *lock); -bool rwlock_unlock(rwlock_t *lock); +BOOL rwlock_init(rwlock_t *lock); +BOOL rwlock_rdlock(rwlock_t *lock); +BOOL rwlock_tryrdlock(rwlock_t *lock); +BOOL rwlock_wrlock(rwlock_t *lock); +BOOL rwlock_trywrlock(rwlock_t *lock); +BOOL rwlock_unlock(rwlock_t *lock); #else #error Not implemented