diff options
author | jwoolley <jwoolley@13f79535-47bb-0310-9956-ffa450edef68> | 2005-03-11 20:43:11 +0000 |
---|---|---|
committer | jwoolley <jwoolley@13f79535-47bb-0310-9956-ffa450edef68> | 2005-03-11 20:43:11 +0000 |
commit | ff517349f0de9ffcedbd90a8ddae0e4dc67e14b6 (patch) | |
tree | a986667af29bf1903a541850f4f6a26e4fb3dd27 | |
parent | 04ebc9e2036ceb63abd0253719ab4c36c9976e35 (diff) | |
download | libapr-util-ff517349f0de9ffcedbd90a8ddae0e4dc67e14b6.tar.gz |
backport from trunk:
Fix memory leak when in APR_POOL_DEBUG mode.
Submitted by: Joe Schaefer
git-svn-id: http://svn.apache.org/repos/asf/apr/apr-util/branches/1.0.x@157151 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | buckets/apr_buckets_alloc.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/buckets/apr_buckets_alloc.c b/buckets/apr_buckets_alloc.c index 698d203d..58b46640 100644 --- a/buckets/apr_buckets_alloc.c +++ b/buckets/apr_buckets_alloc.c @@ -45,6 +45,13 @@ static apr_status_t alloc_cleanup(void *data) apr_bucket_alloc_t *list = data; apr_allocator_free(list->allocator, list->blocks); + +#if APR_POOL_DEBUG + if (list->pool && list->allocator != apr_pool_allocator_get(list->pool)) { + apr_allocator_destroy(list->allocator); + } +#endif + return APR_SUCCESS; } |