mirror of
https://github.com/apache/httpd.git
synced 2025-08-07 04:02:58 +03:00
Make sure we free the main request rather than the final internal
redirect. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1707155 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
@@ -256,14 +256,6 @@ AP_DECLARE(void) ap_process_request_after_handler(request_rec *r)
|
||||
apr_bucket *b;
|
||||
conn_rec *c = r->connection;
|
||||
|
||||
/* Find the last request, taking into account internal
|
||||
* redirects. We want to send the EOR bucket at the end of
|
||||
* all the buckets so it does not jump the queue.
|
||||
*/
|
||||
while (r->next) {
|
||||
r = r->next;
|
||||
}
|
||||
|
||||
/* Send an EOR bucket through the output filter chain. When
|
||||
* this bucket is destroyed, the request will be logged and
|
||||
* its pool will be freed
|
||||
@@ -272,6 +264,14 @@ AP_DECLARE(void) ap_process_request_after_handler(request_rec *r)
|
||||
b = ap_bucket_eor_create(c->bucket_alloc, r);
|
||||
APR_BRIGADE_INSERT_HEAD(bb, b);
|
||||
|
||||
/* Find the last request, taking into account internal
|
||||
* redirects. We want to send the EOR bucket at the end of
|
||||
* all the buckets so it does not jump the queue.
|
||||
*/
|
||||
while (r->next) {
|
||||
r = r->next;
|
||||
}
|
||||
|
||||
ap_pass_brigade(r->output_filters, bb);
|
||||
|
||||
/* The EOR bucket has either been handled by an output filter (eg.
|
||||
|
Reference in New Issue
Block a user