From b2ae2f5358e87fabd519bc2de20b3ab81d733820 Mon Sep 17 00:00:00 2001 From: Kévin Dunglas Date: Tue, 17 May 2022 19:33:28 +0000 Subject: net/http: unskip TestEarlyHintsRequest_h2 golang/net#134 and golang/net#96 have been merged. This patch updates h2_bundle.go and enables TestEarlyHintsRequest_h2. Change-Id: Ia53fee6b3c4892a7cde10e7b62cbe7b64fa9f155 GitHub-Last-Rev: ea521b02ae1e873f9b8be6a2a3e81699d8eb5584 GitHub-Pull-Request: golang/go#52947 Reviewed-on: https://go-review.googlesource.com/c/go/+/406914 Run-TryBot: Ian Lance Taylor TryBot-Result: Gopher Robot Reviewed-by: Damien Neil Reviewed-by: Ian Lance Taylor --- src/net/http/clientserver_test.go | 3 --- src/net/http/h2_bundle.go | 8 ++++++++ 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'src/net/http') diff --git a/src/net/http/clientserver_test.go b/src/net/http/clientserver_test.go index 3fc9fcf19d..b472ca4b78 100644 --- a/src/net/http/clientserver_test.go +++ b/src/net/http/clientserver_test.go @@ -1624,9 +1624,6 @@ func TestEarlyHintsRequest_h1(t *testing.T) { testEarlyHintsRequest(t, h1Mode) } func TestEarlyHintsRequest_h2(t *testing.T) { testEarlyHintsRequest(t, h2Mode) } func testEarlyHintsRequest(t *testing.T, h2 bool) { defer afterTest(t) - if h2 { - t.Skip("Waiting for H2 support to be merged: https://go-review.googlesource.com/c/net/+/406494") - } var wg sync.WaitGroup wg.Add(1) diff --git a/src/net/http/h2_bundle.go b/src/net/http/h2_bundle.go index dfb1adbf30..53fbe9352a 100644 --- a/src/net/http/h2_bundle.go +++ b/src/net/http/h2_bundle.go @@ -6401,6 +6401,14 @@ func (rws *http2responseWriterState) writeHeader(code int) { // Per RFC 8297 we must not clear the current header map h := rws.handlerHeader + _, cl := h["Content-Length"] + _, te := h["Transfer-Encoding"] + if cl || te { + h = h.Clone() + h.Del("Content-Length") + h.Del("Transfer-Encoding") + } + if rws.conn.writeHeaders(rws.stream, &http2writeResHeaders{ streamID: rws.stream.id, httpResCode: code, -- cgit v1.3-6-g1900