]> granicus.if.org Git - apache/commitdiff
fixing duplice response headers, in case post_read_req hook gets called twice
authorStefan Eissing <icing@apache.org>
Mon, 7 Dec 2015 12:50:14 +0000 (12:50 +0000)
committerStefan Eissing <icing@apache.org>
Mon, 7 Dec 2015 12:50:14 +0000 (12:50 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1718338 13f79535-47bb-0310-9956-ffa450edef68

modules/http2/h2_h2.c

index 3b62dbf1c8d220307acc5f7d7ebe6e92aee0c5c0..2f93340d9c61a59d8d3a524e82659b240bcb90ab 100644 (file)
@@ -663,18 +663,20 @@ static int h2_h2_post_read_req(request_rec *r)
     h2_ctx *ctx = h2_ctx_rget(r);
     struct h2_task *task = h2_ctx_get_task(ctx);
     if (task) {
+        /* FIXME: sometimes, this hook gets called twice for a single request.
+         * This should not be, right? */
         /* h2_task connection for a stream, not for h2c */
         ap_log_rerror(APLOG_MARK, APLOG_TRACE3, 0, r,
                       "adding h1_to_h2_resp output filter");
         if (task->serialize_headers) {
-/*            ap_remove_output_filter_byhandle(r->output_filters, "H1_TO_H2_RESP");*/
+            ap_remove_output_filter_byhandle(r->output_filters, "H1_TO_H2_RESP");
             ap_add_output_filter("H1_TO_H2_RESP", task, r, r->connection);
         }
         else {
             /* replace the core http filter that formats response headers
              * in HTTP/1 with our own that collects status and headers */
             ap_remove_output_filter_byhandle(r->output_filters, "HTTP_HEADER");
-/*            ap_remove_output_filter_byhandle(r->output_filters, "H2_RESPONSE");*/
+            ap_remove_output_filter_byhandle(r->output_filters, "H2_RESPONSE");
             ap_add_output_filter("H2_RESPONSE", task, r, r->connection);
         }
         ap_add_output_filter("H2_TRAILERS", task, r, r->connection);