]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#9181 fix ldap_pvt_thread_mutex_t used before its definition
authorRyan Tandy <ryan@nardis.ca>
Thu, 16 Apr 2020 17:46:18 +0000 (10:46 -0700)
committerQuanah Gibson-Mount <quanah@openldap.org>
Thu, 16 Apr 2020 21:05:16 +0000 (21:05 +0000)
include/ldap_int_thread.h
libraries/libldap_r/thr_nt.c

index ad94f3cd805a18e57d66d696c28adbae1d68b16b..881f753b1e23703f504bab0d359f607a39481d0e 100644 (file)
@@ -181,12 +181,12 @@ typedef HANDLE    ldap_int_thread_cond_t;
 typedef DWORD  ldap_int_thread_key_t;
 
 LDAP_F( int )
-ldap_pvt_thread_mutex_init_first LDAP_P(( ldap_pvt_thread_mutex_t *mutex ));
+ldap_int_mutex_firstcreate LDAP_P(( ldap_int_thread_mutex_t *mutex ));
 
 #ifndef LDAP_INT_MUTEX_NULL
 #define LDAP_INT_MUTEX_NULL            ((HANDLE)0)
 #define LDAP_INT_MUTEX_FIRSTCREATE(m) \
-               ldap_pvt_thread_mutex_init_first(&(m))
+               ldap_int_mutex_firstcreate(&(m))
 #endif
 
 LDAP_END_DECL
index 5929556b8f1bd7e20ab4bc24a469d407275a0237..ec7f868c03c8ac730b09c2caef179b60d5fe19ae 100644 (file)
@@ -54,6 +54,17 @@ ldap_int_thread_destroy( void )
        return 0;
 }
 
+int
+ldap_int_mutex_firstcreate( ldap_int_thread_mutex_t *mutex )
+{
+       if ( *mutex == NULL ) {
+               HANDLE p = CreateMutex( NULL, 0, NULL );
+               if ( InterlockedCompareExchangePointer((PVOID*)mutex, (PVOID)p, NULL) != NULL)
+                       CloseHandle( p );
+       }
+       return 0;
+}
+
 int 
 ldap_pvt_thread_create( ldap_pvt_thread_t * thread, 
        int detach,
@@ -161,17 +172,6 @@ ldap_pvt_thread_mutex_init( ldap_pvt_thread_mutex_t *mutex )
        return ( 0 );
 }
 
-int
-ldap_pvt_thread_mutex_init_first( ldap_pvt_thread_mutex_t *mutex )
-{
-       if ( *mutex == NULL ) {
-               HANDLE p = CreateMutex( NULL, 0, NULL );
-               if ( InterlockedCompareExchangePointer((PVOID*)mutex, (PVOID)p, NULL) != NULL)
-                       CloseHandle( p );
-       }
-       return ( 0 );
-}
-
 int 
 ldap_pvt_thread_mutex_destroy( ldap_pvt_thread_mutex_t *mutex )
 {