From: Ondřej Kuzník Date: Thu, 29 Nov 2018 14:41:58 +0000 (+0000) Subject: ITS#8858 Fix use after free X-Git-Tag: OPENLDAP_REL_ENG_2_5_0ALPHA~67^2~173 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c65cf6e6d7e2868565226b9f1e322f7580bab10a;p=thirdparty%2Fopenldap.git ITS#8858 Fix use after free --- diff --git a/libraries/libldap_r/tpool.c b/libraries/libldap_r/tpool.c index c539308315..5156111654 100644 --- a/libraries/libldap_r/tpool.c +++ b/libraries/libldap_r/tpool.c @@ -922,11 +922,11 @@ ldap_pvt_thread_pool_free ( ldap_pvt_thread_pool_t *tpool ) assert( !pq->ltp_open_count ); assert( LDAP_SLIST_EMPTY(&pq->ltp_free_list) ); + ldap_pvt_thread_cond_destroy(&pq->ltp_cond); + ldap_pvt_thread_mutex_destroy(&pq->ltp_mutex); if (pq->ltp_free) { LDAP_FREE(pq->ltp_free); } - ldap_pvt_thread_cond_destroy(&pq->ltp_cond); - ldap_pvt_thread_mutex_destroy(&pq->ltp_mutex); } LDAP_FREE(pool->ltp_wqs); LDAP_FREE(pool);