]> Cypherpunks repositories - gostls13.git/commit
net/http: fix handling of HEAD in ReadResponse and (*http.Response).Write
authorJohn Graham-Cumming <jgc@jgc.org>
Thu, 28 Feb 2013 17:29:50 +0000 (09:29 -0800)
committerBrad Fitzpatrick <bradfitz@golang.org>
Thu, 28 Feb 2013 17:29:50 +0000 (09:29 -0800)
commit087b708fd3c60a2ca753738c1cc8072978493a3a
treeb9fce607e5b10dc4b9aad9a0e9035011be561802
parent6ecb39fce66e2fb08dea2d798822c8f0a93e29d5
net/http: fix handling of HEAD in ReadResponse and (*http.Response).Write

The test suite for ReadResponse was not checking the error return on the io.Copy
on the body. This was masking two errors: the handling of chunked responses to
HEAD requests and the handling of Content-Length > 0 to HEAD.

The former manifested itself as an 'unexpected EOF' when doing the io.Copy
because a chunked reader was assigned but there were no chunks to read. The
latter cause (*http.Response).Write to report an error on HEAD requests
because it saw a Content-Length > 0 and expected a body.

There was also a missing \r\n in one chunked test that meant that the chunked
encoding was malformed. This does not appear to have been intentional.

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/7407046
src/pkg/net/http/response_test.go
src/pkg/net/http/transfer.go