summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--compat/w32pthreads.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/compat/w32pthreads.h b/compat/w32pthreads.h
index 7b51c25..cfb8f64 100644
--- a/compat/w32pthreads.h
+++ b/compat/w32pthreads.h
@@ -134,28 +134,29 @@ typedef struct win32_cond_t {
volatile int is_broadcast;
} win32_cond_t;
-static void pthread_cond_init(pthread_cond_t *cond, const void *unused_attr)
+static int pthread_cond_init(pthread_cond_t *cond, const void *unused_attr)
{
win32_cond_t *win32_cond = NULL;
if (cond_init) {
cond_init(cond);
- return;
+ return 0;
}
/* non native condition variables */
win32_cond = av_mallocz(sizeof(win32_cond_t));
if (!win32_cond)
- return;
+ return ENOMEM;
cond->ptr = win32_cond;
win32_cond->semaphore = CreateSemaphore(NULL, 0, 0x7fffffff, NULL);
if (!win32_cond->semaphore)
- return;
+ return ENOMEM;
win32_cond->waiters_done = CreateEvent(NULL, TRUE, FALSE, NULL);
if (!win32_cond->waiters_done)
- return;
+ return ENOMEM;
pthread_mutex_init(&win32_cond->mtx_waiter_count, NULL);
pthread_mutex_init(&win32_cond->mtx_broadcast, NULL);
+ return 0;
}
static void pthread_cond_destroy(pthread_cond_t *cond)
OpenPOWER on IntegriCloud