httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From s.@apache.org
Subject svn commit: r954590 - in /httpd/httpd/trunk: STATUS server/eor_bucket.c
Date Mon, 14 Jun 2010 19:07:03 GMT
Author: sf
Date: Mon Jun 14 19:07:02 2010
New Revision: 954590

URL: http://svn.apache.org/viewvc?rev=954590&view=rev
Log:
Change the eor bucket to use a pre-cleanup to run the log transaction hook.
This fixes some segfaults.

Modified:
    httpd/httpd/trunk/STATUS
    httpd/httpd/trunk/server/eor_bucket.c

Modified: httpd/httpd/trunk/STATUS
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/STATUS?rev=954590&r1=954589&r2=954590&view=diff
==============================================================================
--- httpd/httpd/trunk/STATUS (original)
+++ httpd/httpd/trunk/STATUS Mon Jun 14 19:07:02 2010
@@ -75,6 +75,8 @@ RELEASE SHOWSTOPPERS:
 
       http://marc.info/?l=apache-httpd-dev&m=123910381908293&w=1
 
+    sf: Has been changed to a pre-cleanup and should be ok now.
+
   * MPM event (maybe others, too) closes open files only after the
     connection has been closed. This could be fixed in apr-util or httpd:
     http://mail-archives.apache.org/mod_mbox/httpd-dev/201005.mbox/<201005172311.39558.sf@sfritsch.de>

Modified: httpd/httpd/trunk/server/eor_bucket.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/server/eor_bucket.c?rev=954590&r1=954589&r2=954590&view=diff
==============================================================================
--- httpd/httpd/trunk/server/eor_bucket.c (original)
+++ httpd/httpd/trunk/server/eor_bucket.c Mon Jun 14 19:07:02 2010
@@ -73,9 +73,10 @@ AP_DECLARE(apr_bucket *) ap_bucket_eor_c
          * 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);
 }



Mime
View raw message