Revert "make sure streamLock is non-blocking due to receiveBytes"

This reverts commit 20e41dd6bd.
This commit is contained in:
xtaci
2019-04-17 21:44:28 +08:00
parent 20e41dd6bd
commit 5eb9306e00
+11 -9
View File
@@ -248,18 +248,20 @@ func (s *Session) recvLoop() {
}
s.streamLock.Unlock()
case cmdPSH:
var written int64
var err error
s.streamLock.Lock()
stream := s.streams[sid]
s.streamLock.Unlock()
if stream != nil {
written, err := stream.receiveBytes(s.conn, int64(hdr.Length()))
if stream, ok := s.streams[sid]; ok {
written, err = stream.receiveBytes(s.conn, int64(hdr.Length()))
atomic.AddInt32(&s.bucket, -int32(written))
stream.notifyReadEvent()
if err != nil {
s.Close()
return
}
}
s.streamLock.Unlock()
// read data error
if err != nil {
s.Close()
return
}
default:
s.Close()