Commit 648034be authored by Eric Covener's avatar Eric Covener
Browse files

revert 1767482 backport

cleanup next



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1767647 13f79535-47bb-0310-9956-ffa450edef68
parent be6241e6
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -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]
+5 −0
Original line number Diff line number Diff line
@@ -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 ]
+2 −10
Original line number Diff line number Diff line
@@ -711,17 +711,9 @@ 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);
    }
    }
    else {
        /*
         * We need to check if we now have the SUBREQ_CORE filter in our filter
+2 −11
Original line number Diff line number Diff line
@@ -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,16 +1968,9 @@ 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);
    }
    }
    else {
        /* If NULL - we are expecting to be internal_fast_redirect'ed
         * to this subrequest - or this request will never be invoked.