diff options
author | Stefan Fritsch <sf@apache.org> | 2010-06-14 21:07:02 +0200 |
---|---|---|
committer | Stefan Fritsch <sf@apache.org> | 2010-06-14 21:07:02 +0200 |
commit | c1e908605507bb1fade55d35a517997584a044d1 (patch) | |
tree | d1e4cb1720d5937dfbc4e1daed118b8dd85eb3d8 /server/eor_bucket.c | |
parent | prevent an error message if an old autoconf without AC_PROG_CC_C99 is used but (diff) | |
download | apache2-c1e908605507bb1fade55d35a517997584a044d1.tar.xz apache2-c1e908605507bb1fade55d35a517997584a044d1.zip |
Change the eor bucket to use a pre-cleanup to run the log transaction hook.
This fixes some segfaults.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@954590 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
-rw-r--r-- | server/eor_bucket.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/server/eor_bucket.c b/server/eor_bucket.c index b758bc9243..4d3e1ecfbe 100644 --- a/server/eor_bucket.c +++ b/server/eor_bucket.c @@ -73,9 +73,10 @@ AP_DECLARE(apr_bucket *) ap_bucket_eor_create(apr_bucket_alloc_t *list, * e.g. the parent pool of the request pool. In this case * eor_bucket_destroy might be called at a point of time when the * request pool had been already destroyed. + * We need to use a pre-cleanup here because a module may create a + * sub-pool which is still needed during the log_transaction hook. */ - apr_pool_cleanup_register(r->pool, (void *)b, eor_bucket_cleanup, - apr_pool_cleanup_null); + apr_pool_pre_cleanup_register(r->pool, (void *)b, eor_bucket_cleanup); } return ap_bucket_eor_make(b, r); } |