diff options
author | Pete Batard <pbatard@gmail.com> | 2010-08-16 23:48:00 +0100 |
---|---|---|
committer | Pete Batard <pbatard@gmail.com> | 2010-08-16 23:48:00 +0100 |
commit | 2ffa5342c4237cec17e391e5bb809f382240d9a9 (patch) | |
tree | 459720ad69060643762dba6a560b0b3050590800 /libusb/os/threads_windows.c | |
parent | 3cbb8af8742f1384f25df84b3d4047983cbce709 (diff) | |
download | libusb-2ffa5342c4237cec17e391e5bb809f382240d9a9.tar.gz |
only apply previous workaround for 32 bit buildspbr295
Diffstat (limited to 'libusb/os/threads_windows.c')
-rw-r--r-- | libusb/os/threads_windows.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libusb/os/threads_windows.c b/libusb/os/threads_windows.c index 9d64fb0..5eb0478 100644 --- a/libusb/os/threads_windows.c +++ b/libusb/os/threads_windows.c @@ -26,12 +26,17 @@ #include "libusbi.h" // Workaround for MinGW-w64 multilib bug +#if defined(_WIN64) +#define INIT_INTERLOCKEDEXCHANGE +#define pInterlockedExchange InterlockedExchange +#else static LONG (WINAPI *pInterlockedExchange)(LONG volatile *, LONG) = NULL; #define INIT_INTERLOCKEDEXCHANGE if (pInterlockedExchange == NULL) { \ pInterlockedExchange = (LONG (WINAPI *)(LONG volatile *, LONG)) \ GetProcAddress(GetModuleHandle("KERNEL32"), "InterlockedExchange"); \ if (pInterlockedExchange == NULL) return ((errno=ENOENT)); \ } +#endif int usbi_mutex_init(usbi_mutex_t *mutex, const usbi_mutexattr_t *attr) { |