mirror of
https://github.com/golang/go
synced 2024-11-25 01:37:57 -07:00
net/http: close client fd sooner on response read error
This fixes some test noise in TestStressSurpriseServerCloses when ulimit -n something low, like 256 on a Mac. Previously, when the server closed on us and we were expecting more responses (like we are in that test), we'd read an "Unexpected EOF" and just forget about the client's net.Conn. Now it's closed, rather than waiting on the finalizer to release the fd. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/5602043
This commit is contained in:
parent
847197d339
commit
c0ecfb072b
@ -535,7 +535,9 @@ func (pc *persistConn) readLoop() {
|
||||
}
|
||||
resp, err := ReadResponse(pc.br, rc.req)
|
||||
|
||||
if err == nil {
|
||||
if err != nil {
|
||||
pc.close()
|
||||
} else {
|
||||
hasBody := rc.req.Method != "HEAD" && resp.ContentLength != 0
|
||||
if rc.addedGzip && hasBody && resp.Header.Get("Content-Encoding") == "gzip" {
|
||||
resp.Header.Del("Content-Encoding")
|
||||
|
Loading…
Reference in New Issue
Block a user