mirror of
https://github.com/golang/go
synced 2024-11-25 01:08:02 -07:00
http: fixes for sniffing
R=golang-dev, dsymonds CC=golang-dev https://golang.org/cl/4753044
This commit is contained in:
parent
4c6280b0f1
commit
e07c6e6ee7
@ -131,7 +131,7 @@ func (r *response) ReadFrom(src io.Reader) (n int64, err os.Error) {
|
||||
// WriteHeader if it hasn't been called yet, and WriteHeader
|
||||
// is what sets r.chunking.
|
||||
r.Flush()
|
||||
if !r.chunking && r.bodyAllowed() {
|
||||
if !r.chunking && r.bodyAllowed() && !r.needSniff {
|
||||
if rf, ok := r.conn.rwc.(io.ReaderFrom); ok {
|
||||
n, err = rf.ReadFrom(src)
|
||||
r.written += n
|
||||
@ -367,8 +367,8 @@ func (w *response) sniff() {
|
||||
|
||||
if w.chunking && len(data) > 0 {
|
||||
fmt.Fprintf(w.conn.buf, "%x\r\n", len(data))
|
||||
w.conn.buf.Write(data)
|
||||
}
|
||||
w.conn.buf.Write(data)
|
||||
}
|
||||
|
||||
// bodyAllowed returns true if a Write is allowed for this response type.
|
||||
|
Loading…
Reference in New Issue
Block a user