[FFmpeg-cvslog] w32threads: Wrap the mutex functions in inline functions returning int

Martin Storsjö git at videolan.org
Sun Nov 6 02:39:14 CET 2011


ffmpeg | branch: master | Martin Storsjö <martin at martin.st> | Tue Nov  1 15:23:03 2011 +0200| [8148631269734f4ecde7a63ca7432e82c12c0b3e] | committer: Martin Storsjö

w32threads: Wrap the mutex functions in inline functions returning int

This allows using these wrappers in the gcrypt mutex callbacks.

Signed-off-by: Martin Storsjö <martin at martin.st>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=8148631269734f4ecde7a63ca7432e82c12c0b3e
---

 libavcodec/w32pthreads.h |   24 ++++++++++++++++++++----
 1 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/libavcodec/w32pthreads.h b/libavcodec/w32pthreads.h
index 7774817..c015b87 100644
--- a/libavcodec/w32pthreads.h
+++ b/libavcodec/w32pthreads.h
@@ -91,10 +91,26 @@ static void pthread_join(pthread_t thread, void **value_ptr)
     CloseHandle(thread.handle);
 }
 
-#define pthread_mutex_init(m, a) InitializeCriticalSection(m)
-#define pthread_mutex_destroy(m) DeleteCriticalSection(m)
-#define pthread_mutex_lock(m)    EnterCriticalSection(m)
-#define pthread_mutex_unlock(m)  LeaveCriticalSection(m)
+static inline int pthread_mutex_init(pthread_mutex_t *m, void* attr)
+{
+    InitializeCriticalSection(m);
+    return 0;
+}
+static inline int pthread_mutex_destroy(pthread_mutex_t *m)
+{
+    DeleteCriticalSection(m);
+    return 0;
+}
+static inline int pthread_mutex_lock(pthread_mutex_t *m)
+{
+    EnterCriticalSection(m);
+    return 0;
+}
+static inline int pthread_mutex_unlock(pthread_mutex_t *m)
+{
+    LeaveCriticalSection(m);
+    return 0;
+}
 
 /* for pre-Windows 6.0 platforms we need to define and use our own condition
  * variable and api */



More information about the ffmpeg-cvslog mailing list