]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
revert 1767482 backport
authorEric Covener <covener@apache.org>
Wed, 2 Nov 2016 12:01:23 +0000 (12:01 +0000)
committerEric Covener <covener@apache.org>
Wed, 2 Nov 2016 12:01:23 +0000 (12:01 +0000)
cleanup next

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1767647 13f79535-47bb-0310-9956-ffa450edef68

CHANGES
STATUS
modules/http/http_request.c
server/request.c

diff --git a/CHANGES b/CHANGES
index 9ee96ba26b43b0564724cfccd22ddda6efe87b8e..0d6561b6629567e6b65e5f841d077e2df547a366 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -18,9 +18,6 @@ Changes with Apache 2.4.24
      than running with the modified XFF but original TCP address.
      PR 49839/PR 60251
 
-  *) core: avoid adding multiple subrequest filters when there are nested
-     subrequests. PR 58292
-
   *) mod_http2: connection shutdown revisited: corrected edge cases on
      shutting down ongoing streams, changed log warnings to be less noisy
      when waiting on long running tasks. [Stefan Eissing]
diff --git a/STATUS b/STATUS
index 2ec21c78aeae499c5848a9c6089bd00786fda01e..cbdc4c36c6daf89eb47044d575681318d38a7c41 100644 (file)
--- a/STATUS
+++ b/STATUS
@@ -117,6 +117,11 @@ RELEASE SHOWSTOPPERS:
 PATCHES ACCEPTED TO BACKPORT FROM TRUNK:
   [ start all new proposals below, under PATCHES PROPOSED. ]
 
+  *) core: avoid adding multiple subrequest filters when there are nested 
+     subrequests.  PR58292
+     trunk patch: http://svn.apache.org/r1698239
+     2.4.x patch: trunk works
+     +1: covener, ylavic, jim
 
 PATCHES PROPOSED TO BACKPORT FROM TRUNK:
   [ New proposals should be added at the end of the list ]
index b2dc893d41f1af17b59941c27a8ec532010bdcc7..9ce7b8b32987fadd5e7ffd24b349943b293340ab 100644 (file)
@@ -711,16 +711,8 @@ AP_DECLARE(void) ap_internal_fast_redirect(request_rec *rr, request_rec *r)
     update_r_in_filters(r->output_filters, rr, r);
 
     if (r->main) {
-        ap_filter_t *next = r->output_filters;
-        while (next && (next != r->proto_output_filters)) {
-            if (next->frec == ap_subreq_core_filter_handle) {
-                break;
-            }
-        }
-        if (!next || next == r->proto_output_filters) {
-            ap_add_output_filter_handle(ap_subreq_core_filter_handle,
-                                        NULL, r, r->connection);
-        }
+        ap_add_output_filter_handle(ap_subreq_core_filter_handle,
+                                    NULL, r, r->connection);
     }
     else {
         /*
index 6eb14d591c0277cfc46af3dbb98bb19e3384a081..eecc0266b15a99b7e5fbd73f26a8e084e7e9aa6a 100644 (file)
@@ -1960,8 +1960,6 @@ static request_rec *make_sub_request(const request_rec *r,
 
     /* start with the same set of output filters */
     if (next_filter) {
-        ap_filter_t *scan = next_filter;
-
         /* while there are no input filters for a subrequest, we will
          * try to insert some, so if we don't have valid data, the code
          * will seg fault.
@@ -1970,15 +1968,8 @@ static request_rec *make_sub_request(const request_rec *r,
         rnew->proto_input_filters = r->proto_input_filters;
         rnew->output_filters = next_filter;
         rnew->proto_output_filters = r->proto_output_filters;
-        while (scan && (scan != r->proto_output_filters)) {
-            if (scan->frec == ap_subreq_core_filter_handle) {
-                break;
-            }
-        }
-        if (!scan || scan == r->proto_output_filters) {
-            ap_add_output_filter_handle(ap_subreq_core_filter_handle,
-                    NULL, rnew, rnew->connection);
-        }
+        ap_add_output_filter_handle(ap_subreq_core_filter_handle,
+                                    NULL, rnew, rnew->connection);
     }
     else {
         /* If NULL - we are expecting to be internal_fast_redirect'ed