summaryrefslogtreecommitdiff
path: root/server/util_filter.c
diff options
context:
space:
mode:
authorYann Ylavic <ylavic@apache.org>2018-07-18 22:36:19 +0000
committerYann Ylavic <ylavic@apache.org>2018-07-18 22:36:19 +0000
commit8d0a14e3e8f5fda68eedb74afc3ff4ec2f91d304 (patch)
tree49d05d8bbe346d6b5b1470d73d23fbfdb86f6f29 /server/util_filter.c
parent8a6e1c3adaeff09563df4a9da8b72eca29befda6 (diff)
downloadhttpd-8d0a14e3e8f5fda68eedb74afc3ff4ec2f91d304.tar.gz
core: integrate data_in_{in,out}put_filter to ap_filter_{in,out}put_pending().
Straightforward for ap_filter_input_pending() since c->data_in_input_filter is always checked wherever ap_run_input_pending(c) is. For ap_filter_output_pending(), this allows to set c->data_in_output_filter in ap_process_request_after_handler() and avoid an useless flush from mpm_event. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1836239 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'server/util_filter.c')
-rw-r--r--server/util_filter.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/server/util_filter.c b/server/util_filter.c
index 470547c37e..22af83d8bc 100644
--- a/server/util_filter.c
+++ b/server/util_filter.c
@@ -1008,6 +1008,10 @@ AP_DECLARE_NONSTD(int) ap_filter_output_pending(conn_rec *c)
apr_bucket_brigade *bb;
ap_filter_t *f;
+ if (c->data_in_output_filters) {
+ return OK;
+ }
+
if (!c->pending_filters) {
return DECLINED;
}
@@ -1044,6 +1048,10 @@ AP_DECLARE_NONSTD(int) ap_filter_input_pending(conn_rec *c)
{
ap_filter_t *f;
+ if (c->data_in_input_filters) {
+ return OK;
+ }
+
if (!c->pending_filters) {
return DECLINED;
}