Skip to content

Commit 47ca1ff

Browse files
committed
http2: avoid busy loop when ResponseHeaderTimeout is set
Don't keep reading from respHeaderRecv after the response headers are received. Fixes golang/go#49615. Change-Id: Ib8126c954930011ac09b2cbc70bbbce76531b7db Reviewed-on: https://go-review.googlesource.com/c/net/+/364574 Trust: Damien Neil <[email protected]> Run-TryBot: Damien Neil <[email protected]> TryBot-Result: Go Bot <[email protected]> Reviewed-by: Brad Fitzpatrick <[email protected]>
1 parent e8b54de commit 47ca1ff

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

http2/transport.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1313,6 +1313,7 @@ func (cs *clientStream) writeRequest(req *http.Request) (err error) {
13131313
case <-respHeaderTimer:
13141314
return errTimeout
13151315
case <-respHeaderRecv:
1316+
respHeaderRecv = nil
13161317
respHeaderTimer = nil // keep waiting for END_STREAM
13171318
case <-cs.abort:
13181319
return cs.abortErr

0 commit comments

Comments
 (0)