Commit 853c99dd authored by Brad Fitzpatrick's avatar Brad Fitzpatrick

crypto/tls: don't block on Read of zero bytes

Fixes #7775

LGTM=rsc
R=agl, rsc
CC=golang-codereviews
https://golang.org/cl/88340043
parent c47f0865
...@@ -884,6 +884,11 @@ func (c *Conn) Read(b []byte) (n int, err error) { ...@@ -884,6 +884,11 @@ func (c *Conn) Read(b []byte) (n int, err error) {
if err = c.Handshake(); err != nil { if err = c.Handshake(); err != nil {
return return
} }
if len(b) == 0 {
// Put this after Handshake, in case people were calling
// Read(nil) for the side effect of the Handshake.
return
}
c.in.Lock() c.in.Lock()
defer c.in.Unlock() defer c.in.Unlock()
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment