diff --git a/lib/BasicsC/locks-posix.c b/lib/BasicsC/locks-posix.c index 2d4bfe33e9..e50d880ede 100644 --- a/lib/BasicsC/locks-posix.c +++ b/lib/BasicsC/locks-posix.c @@ -389,7 +389,6 @@ void TRI_WriteUnlockReadWriteLock (TRI_read_write_lock_t* lock) { void TRI_InitCondition (TRI_condition_t* cond) { pthread_cond_init(&cond->_cond, 0); - cond->_ownMutex = true; cond->_mutex = TRI_Allocate(TRI_CORE_MEM_ZONE, sizeof(pthread_mutex_t), false); if (cond->_mutex == NULL) { @@ -399,28 +398,14 @@ void TRI_InitCondition (TRI_condition_t* cond) { pthread_mutex_init(cond->_mutex, 0); } -//////////////////////////////////////////////////////////////////////////////// -/// @brief initialises a new condition variable with existing mutex -//////////////////////////////////////////////////////////////////////////////// - -void TRI_Init2Condition (TRI_condition_t* cond, TRI_mutex_t* mutex) { - pthread_cond_init(&cond->_cond, 0); - - cond->_ownMutex = false; - cond->_mutex = mutex; -} - //////////////////////////////////////////////////////////////////////////////// /// @brief destroys a condition variable //////////////////////////////////////////////////////////////////////////////// void TRI_DestroyCondition (TRI_condition_t* cond) { pthread_cond_destroy(&cond->_cond); - - if (cond->_ownMutex) { - pthread_mutex_destroy(cond->_mutex); - TRI_Free(TRI_CORE_MEM_ZONE, cond->_mutex); - } + pthread_mutex_destroy(cond->_mutex); + TRI_Free(TRI_CORE_MEM_ZONE, cond->_mutex); } //////////////////////////////////////////////////////////////////////////////// diff --git a/lib/BasicsC/locks-posix.h b/lib/BasicsC/locks-posix.h index b09382a73a..3e9ad7b33e 100644 --- a/lib/BasicsC/locks-posix.h +++ b/lib/BasicsC/locks-posix.h @@ -73,8 +73,6 @@ extern "C" { typedef struct TRI_condition_s { pthread_cond_t _cond; - - bool _ownMutex; pthread_mutex_t* _mutex; } TRI_condition_t; diff --git a/lib/BasicsC/locks-win32.c b/lib/BasicsC/locks-win32.c index ac8690c167..e0942410d6 100644 --- a/lib/BasicsC/locks-win32.c +++ b/lib/BasicsC/locks-win32.c @@ -632,36 +632,11 @@ void TRI_InitCondition (TRI_condition_t* cond) { FALSE, // non-signaled initially NULL); // unnamed - cond->_ownMutex = true; cond->_mutex = CreateMutex(NULL, // default security attributes FALSE, // initially not owned NULL); } -//////////////////////////////////////////////////////////////////////////////// -/// @brief initialises a new condition variable with existing mutex -//////////////////////////////////////////////////////////////////////////////// - -void TRI_Init2Condition (TRI_condition_t* cond, TRI_mutex_t* mutex) { - cond->_waiters = 0; - cond->_broadcast = false; - - cond->_sema = CreateSemaphore(NULL, // no security - 0, // initially 0 - 0x7fffffff, // max count - NULL); // unnamed - - InitializeCriticalSection(&cond->_lockWaiters); - - cond->_waitersDone = CreateEvent(NULL, // no security - FALSE, // auto-reset - FALSE, // non-signaled initially - NULL); // unnamed - - cond->_ownMutex = false; - cond->_mutex = mutex->_mutex; -} - //////////////////////////////////////////////////////////////////////////////// /// @brief destroys a condition variable //////////////////////////////////////////////////////////////////////////////// @@ -670,10 +645,7 @@ void TRI_DestroyCondition (TRI_condition_t* cond) { CloseHandle(cond->_waitersDone); DeleteCriticalSection(&cond->_lockWaiters); CloseHandle(cond->_sema); - - if (cond->_ownMutex) { - CloseHandle(cond->_mutex); - } + CloseHandle(cond->_mutex); } //////////////////////////////////////////////////////////////////////////////// diff --git a/lib/BasicsC/locks-win32.h b/lib/BasicsC/locks-win32.h index ff8b70e1a9..582b91c452 100644 --- a/lib/BasicsC/locks-win32.h +++ b/lib/BasicsC/locks-win32.h @@ -84,8 +84,6 @@ TRI_read_write_lock_t; typedef struct TRI_condition_s { CRITICAL_SECTION _lockWaiters; - bool _ownMutex; - HANDLE _waitersDone; HANDLE _mutex; HANDLE _sema; diff --git a/lib/BasicsC/locks.h b/lib/BasicsC/locks.h index ecf86b645b..2ef1459c88 100644 --- a/lib/BasicsC/locks.h +++ b/lib/BasicsC/locks.h @@ -300,12 +300,6 @@ void TRI_WriteUnlockReadWriteLock (TRI_read_write_lock_t* lock); void TRI_InitCondition (TRI_condition_t* cond); -//////////////////////////////////////////////////////////////////////////////// -/// @brief initialises a new condition variable with existing mutex -//////////////////////////////////////////////////////////////////////////////// - -void TRI_Init2Condition (TRI_condition_t* cond, TRI_mutex_t* mutex); - //////////////////////////////////////////////////////////////////////////////// /// @brief destroys a condition variable ////////////////////////////////////////////////////////////////////////////////