diff options
Diffstat (limited to 'libs/pbd/pbd/semaphore.h')
-rw-r--r-- | libs/pbd/pbd/semaphore.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/libs/pbd/pbd/semaphore.h b/libs/pbd/pbd/semaphore.h index a2390f5a18..265a219e07 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> @@ -46,7 +49,7 @@ namespace PBD { only safe way to reliably signal from a real-time audio thread. The counting semantics also complement ringbuffers of events nicely. */ -class LIBPBD_API Semaphore +class /*LIBPBD_API*/ Semaphore { public: /** @@ -70,7 +73,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; @@ -115,7 +118,7 @@ Semaphore::try_wait() return semaphore_timedwait(_sem, zero) == KERN_SUCCESS; } -#elif defined(_WIN32) +#elif defined(PLATFORM_WINDOWS) inline Semaphore::Semaphore(unsigned initial) @@ -152,7 +155,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) { |