summaryrefslogtreecommitdiff
path: root/memory
diff options
context:
space:
mode:
authorYann Ylavic <ylavic@apache.org>2020-11-24 23:52:29 +0000
committerYann Ylavic <ylavic@apache.org>2020-11-24 23:52:29 +0000
commit6d005d7264c70ef3136a3ae0e41bfcf4a8e789d1 (patch)
tree1896281a75064bcc4e30bf5fac992af5112c4e69 /memory
parent3d2004b3ee3cc42b411d6bc53a30698360d3ae54 (diff)
downloadapr-6d005d7264c70ef3136a3ae0e41bfcf4a8e789d1.tar.gz
apr_pools: two more uses of allocator_[un]lock() helpers to simplify the code.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1883805 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'memory')
-rw-r--r--memory/unix/apr_pools.c24
1 files changed, 4 insertions, 20 deletions
diff --git a/memory/unix/apr_pools.c b/memory/unix/apr_pools.c
index 99abb6920..bc5bdafa5 100644
--- a/memory/unix/apr_pools.c
+++ b/memory/unix/apr_pools.c
@@ -1012,20 +1012,12 @@ APR_DECLARE(void) apr_pool_destroy(apr_pool_t *pool)
/* Remove the pool from the parents child list */
if (pool->parent) {
-#if APR_HAS_THREADS
- apr_thread_mutex_t *mutex;
-
- if ((mutex = apr_allocator_mutex_get(pool->parent->allocator)) != NULL)
- apr_thread_mutex_lock(mutex);
-#endif /* APR_HAS_THREADS */
+ allocator_lock(pool->parent->allocator);
if ((*pool->ref = pool->sibling) != NULL)
pool->sibling->ref = pool->ref;
-#if APR_HAS_THREADS
- if (mutex)
- apr_thread_mutex_unlock(mutex);
-#endif /* APR_HAS_THREADS */
+ allocator_unlock(pool->parent->allocator);
}
/* Find the block attached to the pool structure. Save a copy of the
@@ -1128,12 +1120,7 @@ APR_DECLARE(apr_status_t) apr_pool_create_ex(apr_pool_t **newpool,
#endif /* defined(NETWARE) */
if ((pool->parent = parent) != NULL) {
-#if APR_HAS_THREADS
- apr_thread_mutex_t *mutex;
-
- if ((mutex = apr_allocator_mutex_get(parent->allocator)) != NULL)
- apr_thread_mutex_lock(mutex);
-#endif /* APR_HAS_THREADS */
+ allocator_lock(parent->allocator);
if ((pool->sibling = parent->child) != NULL)
pool->sibling->ref = &pool->sibling;
@@ -1141,10 +1128,7 @@ APR_DECLARE(apr_status_t) apr_pool_create_ex(apr_pool_t **newpool,
parent->child = pool;
pool->ref = &parent->child;
-#if APR_HAS_THREADS
- if (mutex)
- apr_thread_mutex_unlock(mutex);
-#endif /* APR_HAS_THREADS */
+ allocator_unlock(parent->allocator);
}
else {
pool->sibling = NULL;