diff options
Diffstat (limited to 'libs/pbd/pbd/semaphore.h')
-rw-r--r-- | libs/pbd/pbd/semaphore.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/libs/pbd/pbd/semaphore.h b/libs/pbd/pbd/semaphore.h index e54063a15a..caa5eb68c2 100644 --- a/libs/pbd/pbd/semaphore.h +++ b/libs/pbd/pbd/semaphore.h @@ -22,8 +22,11 @@ #ifdef __APPLE__ # include <mach/mach.h> -#elif defined(_WIN32) +#elif defined(PLATFORM_WINDOWS) # include <windows.h> +#ifndef INFINITE +#define INFINITE 0xffffffffL +#endif #else # include <semaphore.h> # include <errno.h> @@ -69,7 +72,7 @@ public: private: #if defined(__APPLE__) semaphore_t _sem; // sem_t is a worthless broken mess on OSX -#elif defined(_WIN32) +#elif defined(PLATFORM_WINDOWS) HANDLE _sem; // types are overrated anyway #else sem_t _sem; @@ -114,7 +117,7 @@ Semaphore::try_wait() return semaphore_timedwait(_sem, zero) == KERN_SUCCESS; } -#elif defined(_WIN32) +#elif defined(PLATFORM_WINDOWS) inline Semaphore::Semaphore(unsigned initial) @@ -151,7 +154,7 @@ Semaphore::try_wait() return WaitForSingleObject(_sem, 0) == WAIT_OBJECT_0; } -#else /* !defined(__APPLE__) && !defined(_WIN32) */ +#else /* !defined(__APPLE__) && !defined(PLATFORM_WINDOWS) */ Semaphore::Semaphore(unsigned initial) { |