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
Showing
Please register or sign in to comment