Merged revisions 91828 via svnmerge from
authorRussell Bryant <russell@russellbryant.com>
Fri, 7 Dec 2007 21:17:52 +0000 (21:17 +0000)
committerRussell Bryant <russell@russellbryant.com>
Fri, 7 Dec 2007 21:17:52 +0000 (21:17 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91828 | russell | 2007-12-07 15:17:24 -0600 (Fri, 07 Dec 2007) | 6 lines

Fix another bug in the DEBUG_THREADS code.  The ast_mutex_init() function had
the mutex attribute object marked as static.  This means that multiple threads
initializing locks at the same time could step on each other and end up with
improperly initialized locks.
(found when tracking down locking issues related to issue #11080)

........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91829 65c4cc65-6c06-0410-ace0-fbb531ad65f3

include/asterisk/lock.h

index d4870b9..3695d23 100644 (file)
@@ -213,7 +213,7 @@ static inline int __ast_pthread_mutex_init(int track, const char *filename, int
                                                const char *mutex_name, ast_mutex_t *t) 
 {
        int res;
-       static pthread_mutexattr_t  attr;
+       pthread_mutexattr_t  attr;
 
 #ifdef AST_MUTEX_INIT_W_CONSTRUCTORS