Browse Source

compat/w32pthreads: add return value to pthread_cond_init().

Nicolas George 11 years ago
parent
commit
58a10e0e2c
1 changed files with 6 additions and 5 deletions
  1. 6 5
      compat/w32pthreads.h

+ 6 - 5
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)