aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBrad Fitzpatrick <bradfitz@golang.org>2017-06-16 20:37:21 +0000
committerBrad Fitzpatrick <bradfitz@golang.org>2017-06-16 20:53:36 +0000
commit8d75558b766db3ee320297e97f021fbb615b13aa (patch)
tree2b3765f8cdc33c011db9c1760b84c66b878df319 /src
parentec7c6c16e14a46d907c7dc95662093f0ed846143 (diff)
downloadgo-8d75558b766db3ee320297e97f021fbb615b13aa.tar.xz
net/http: update bundled http2
Updates http2 to x/net/http2 git rev 973f3f3 for: http2: make Transport treat http.NoBody like it were nil https://golang.org/cl/45993 Updates #18891 Change-Id: I846ccf286992ed2c6249014e51fdeb40b35e50ed Reviewed-on: https://go-review.googlesource.com/46000 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
Diffstat (limited to 'src')
-rw-r--r--src/net/http/h2_bundle.go6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/net/http/h2_bundle.go b/src/net/http/h2_bundle.go
index 671e0f719e..0533f56f0e 100644
--- a/src/net/http/h2_bundle.go
+++ b/src/net/http/h2_bundle.go
@@ -2996,6 +2996,8 @@ func http2reqBodyIsNoBody(body io.ReadCloser) bool {
return body == NoBody
}
+func http2go18httpNoBody() io.ReadCloser { return NoBody } // for tests only
+
func http2configureServer19(s *Server, conf *http2Server) error {
s.RegisterOnShutdown(conf.state.startGracefulShutdown)
return nil
@@ -7196,7 +7198,7 @@ func http2checkConnHeaders(req *Request) error {
// req.ContentLength, where 0 actually means zero (not unknown) and -1
// means unknown.
func http2actualContentLength(req *Request) int64 {
- if req.Body == nil {
+ if req.Body == nil || http2reqBodyIsNoBody(req.Body) {
return 0
}
if req.ContentLength != 0 {
@@ -7227,8 +7229,8 @@ func (cc *http2ClientConn) RoundTrip(req *Request) (*Response, error) {
}
body := req.Body
- hasBody := body != nil
contentLen := http2actualContentLength(req)
+ hasBody := contentLen != 0
// TODO(bradfitz): this is a copy of the logic in net/http. Unify somewhere?
var requestedGzip bool