commit | 7bf0baf339f82eb6c1e48924c7ceea92097f2335 | [log] [tgz] |
---|---|---|
author | Damien Neil <dneil@google.com> | Sat Sep 11 09:21:51 2021 -0700 |
committer | Damien Neil <dneil@google.com> | Mon Sep 13 18:01:05 2021 +0000 |
tree | f459e61c61d81eca706d7a033c8ef15d6c90eb62 | |
parent | a5e095526f91bcafb09fea35678f4225fc7b863f [diff] |
http2: close request body after early RoundTrip failures The RoundTrip contract requires that the request Body be closed, even when an error occurs sending the request. Fix several cases where the body was not closed by hoisting the Close call to Transport.RoundTripOpt. Now ClientConn.roundTrip takes responsibility for closing the body once the body write begins; otherwise, the caller does so. Fix the case where a new body is acquired via Request.GetBody to close the previous body, matching net/http's behavior. Fixes golang/go#48341. Change-Id: Id9dc682d4d86a1c255c7c0d864208ff76ed53eb2 Reviewed-on: https://go-review.googlesource.com/c/net/+/349489 Trust: Damien Neil <dneil@google.com> Run-TryBot: Damien Neil <dneil@google.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
This repository holds supplementary Go networking libraries.
The easiest way to install is to run go get -u golang.org/x/net
. You can also manually git clone the repository to $GOPATH/src/golang.org/x/net
.
This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://golang.org/doc/contribute.html. The main issue tracker for the net repository is located at https://github.com/golang/go/issues. Prefix your issue with “x/net:” in the subject line, so it is easy to find.