From 5d9555b238f577da070832b90fb53e95bb2f817a Mon Sep 17 00:00:00 2001 From: Eric Covener Date: Mon, 1 Dec 2008 14:31:51 +0000 Subject: [PATCH] To be safe, consume the entire brigade after processing an error bucket in the HTTP output filter. Submitted by: Rudeiger Pluem Reviewed by: niq, covener git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@722081 13f79535-47bb-0310-9956-ffa450edef68 --- CHANGES | 5 +++++ modules/http/http_filters.c | 6 +++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index 65a553911f..4c65f5bbc4 100644 --- a/CHANGES +++ b/CHANGES @@ -2,6 +2,11 @@ Changes with Apache 2.3.0 [ When backported to 2.2.x, remove entry from this file ] + *) core: When the ap_http_header_filter processes an error bucket, cleanup + the passed brigade before returning AP_FILTER_ERROR down the filter + chain. This unambiguously ensures the same error bucket isn't revisited + [Ruediger Pluem] + *) mod_lbmethod_heartbeat: New module to load balance mod_proxy workers based on heartbeats. [Paul Querna] diff --git a/modules/http/http_filters.c b/modules/http/http_filters.c index 5e3dd116f0..7d194c2a22 100644 --- a/modules/http/http_filters.c +++ b/modules/http/http_filters.c @@ -1145,7 +1145,11 @@ AP_CORE_DECLARE_NONSTD(apr_status_t) ap_http_header_filter(ap_filter_t *f, } } if (eb) { - ap_die(eb->status, r); + int status; + + status = eb->status; + apr_brigade_cleanup(b); + ap_die(status, r); return AP_FILTER_ERROR; } -- 2.50.1