Browse Source

Merge commit '428b0578c64241fc677fed7083cc8fe65e10f32e'

* commit '428b0578c64241fc677fed7083cc8fe65e10f32e':
  w32threads: Use newer thread synchronization functions when targeting Vista

Merged-by: Michael Niedermayer <michaelni@gmx.at>
tags/n2.4
Michael Niedermayer 11 years ago
parent
commit
a0f3db8f60
1 changed files with 12 additions and 0 deletions
  1. +12
    -0
      compat/w32pthreads.h

+ 12
- 0
compat/w32pthreads.h View File

@@ -73,6 +73,18 @@ static BOOL (WINAPI *cond_wait)(pthread_cond_t *cond, pthread_mutex_t *mutex,
#define cond_broadcast WakeAllConditionVariable
#define cond_signal WakeConditionVariable
#define cond_wait SleepConditionVariableCS

#define CreateEvent(a, reset, init, name) \
CreateEventEx(a, name, \
(reset ? CREATE_EVENT_MANUAL_RESET : 0) | \
(init ? CREATE_EVENT_INITIAL_SET : 0), \
EVENT_ALL_ACCESS)
// CreateSemaphoreExA seems to be desktop-only, but as long as we don't
// use named semaphores, it doesn't matter if we use the W version.
#define CreateSemaphore(a, b, c, d) \
CreateSemaphoreExW(a, b, c, d, 0, SEMAPHORE_ALL_ACCESS)
#define InitializeCriticalSection(x) InitializeCriticalSectionEx(x, 0, 0)
#define WaitForSingleObject(a, b) WaitForSingleObjectEx(a, b, FALSE)
#endif

static unsigned __stdcall attribute_align_arg win32thread_worker(void *arg)


Loading…
Cancel
Save