Skip to content

Commit

Permalink
Merge pull request #3535 from nspcc-dev/fix/possible-WS-deadlock-on-c…
Browse files Browse the repository at this point in the history
…onnection-loss
  • Loading branch information
roman-khimov committed Jul 29, 2024
2 parents 8d4e8b6 + 9fadfef commit c2a1c4a
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion pkg/rpcclient/wsclient.go
Original file line number Diff line number Diff line change
Expand Up @@ -601,7 +601,13 @@ readloop:
connCloseErr = fmt.Errorf("unknown response channel for response %d", id)
break readloop // Unknown response (unexpected response ID).
}
ch <- &rr.Response
select {
case <-c.writerDone:
break readloop
case <-c.shutdown:
break readloop
case ch <- &rr.Response:
}
} else {
// Malformed response, neither valid request, nor valid response.
connCloseErr = fmt.Errorf("malformed response")
Expand Down

0 comments on commit c2a1c4a

Please sign in to comment.