From 453ecf68e3b51941944dbc3b1dece11342be3810 Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Wed, 17 Jun 2009 18:26:45 +0400 Subject: [PATCH] * Try to fix locking problem with double unlocking --- src/mem_pool.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mem_pool.c b/src/mem_pool.c index 4261e9f8d..e034ea652 100644 --- a/src/mem_pool.c +++ b/src/mem_pool.c @@ -508,7 +508,7 @@ void memory_pool_unlock_mutex (memory_pool_mutex_t *mutex) { mutex->owner = 0; - (void)g_atomic_int_dec_and_test (&mutex->lock); + (void)g_atomic_int_compare_and_exchange (&mutex->lock, 1, 0); } memory_pool_rwlock_t* -- 2.39.5