Fix closing attach streams on lost tcp connection

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
This commit is contained in:
Tonis Tiigi 2016-04-06 16:49:45 -07:00
parent 76aefc18f9
commit a47cd63915
1 changed files with 4 additions and 0 deletions

View File

@ -51,6 +51,7 @@ func (bp *BytesPipe) Write(p []byte) (int, error) {
bp.mu.Lock()
written := 0
loop0:
for {
if bp.closeErr != nil {
bp.mu.Unlock()
@ -85,6 +86,9 @@ func (bp *BytesPipe) Write(p []byte) (int, error) {
// make sure the buffer doesn't grow too big from this write
for bp.bufLen >= blockThreshold {
bp.wait.Wait()
if bp.closeErr != nil {
continue loop0
}
}
// add new byte slice to the buffers slice and continue writing