Change mutex defines so it should work on OS that don't have the _NP mutex types...
authorJames Golovich <james@gnuinter.net>
Mon, 12 Apr 2004 19:56:32 +0000 (19:56 +0000)
committerJames Golovich <james@gnuinter.net>
Mon, 12 Apr 2004 19:56:32 +0000 (19:56 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2678 65c4cc65-6c06-0410-ace0-fbb531ad65f3

include/asterisk/lock.h

index 70a08ab..f09daa5 100755 (executable)
 #define AST_PTHREADT_NULL (pthread_t) -1
 #define AST_PTHREADT_STOP (pthread_t) -2
 
+/* From now on, Asterisk REQUIRES Recursive (not error checking) mutexes
+   and will not run without them. */
+
+#ifdef PTHREAD_MUTEX_RECURSIVE_NP
+#define AST_MUTEX_INITIALIZER      PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP
+#define AST_MUTEX_KIND             PTHREAD_MUTEX_RECURSIVE_NP
+#else
+#define AST_MUTEX_INITIALIZER      PTHREAD_MUTEX_INITIALIZER
+#define AST_MUTEX_KIND             PTHREAD_MUTEX_RECURSIVE
+#endif
+
 #ifdef DEBUG_THREADS
 
 #ifdef THREAD_CRASH
 #include <stdio.h>
 #include <unistd.h>
 
-/* From now on, Asterisk REQUIRES Recursive (not error checking) mutexes
-   and will not run without them. */
-
-#define AST_MUTEX_INITIALIZER      PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP
-#define AST_MUTEX_KIND             PTHREAD_MUTEX_RECURSIVE_NP
-
 struct ast_mutex_info {
        pthread_mutex_t mutex;
        char *file;
@@ -155,11 +160,6 @@ static inline int __ast_pthread_mutex_destroy(char *filename, int lineno, char *
 
 #else /* DEBUG_THREADS */
 
-/* From now on, Asterisk REQUIRES Recursive (not error checking) mutexes
-   and will not run without them. */
-#define AST_MUTEX_INITIALIZER      PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP
-#define AST_MUTEX_KIND             PTHREAD_MUTEX_RECURSIVE_NP
-
 typedef pthread_mutex_t ast_mutex_t;
 
 #define ast_mutex_lock(t) pthread_mutex_lock(t)