On 07/12/11 06:08, Ronald S. Bultje wrote:
diff --git a/libavcodec/w32pthreads.h b/libavcodec/w32pthreads.h index c015b87..95dcdaa 100644 --- a/libavcodec/w32pthreads.h +++ b/libavcodec/w32pthreads.h @@ -115,9 +115,12 @@ static inline int pthread_mutex_unlock(pthread_mutex_t *m) /* for pre-Windows 6.0 platforms we need to define and use our own condition * variable and api */ typedef struct { + pthread_mutex_t mtx_broadcast; pthread_mutex_t mtx_waiter_count; volatile int waiter_count; HANDLE semaphore; + HANDLE waiters_done; + int is_broadcast; } win32_cond_t;static void pthread_cond_init(pthread_cond_t *cond, const void *unused_attr) @@ -136,8 +139,12 @@ static void pthread_cond_init(pthread_cond_t *cond, const void *unused_attr) win32_cond->semaphore = CreateSemaphore(NULL, 0, 0x7fffffff, NULL); if (!win32_cond->semaphore) return; + win32_cond->waiters_done = CreateEvent(NULL, FALSE, FALSE, NULL); + if (!win32_cond->waiters_done) + return -1;
return; The rest looks ok. -- Luca Barbato Gentoo/linux http://dev.gentoo.org/~lu_zero _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
