Fix potential race condition when closing message channel.

This commit is contained in:
Joachim Bauch 2021-06-07 11:59:06 +02:00
parent 7bdff5ddef
commit 618e7b085e
No known key found for this signature in database
GPG key ID: 77C1D22D53E15F02

View file

@ -185,7 +185,6 @@ func (c *Client) Close() {
c.closeChan <- true
c.messagesDone.Wait()
close(c.messageChan)
c.OnClosed(c)
c.SetSession(nil)
@ -231,6 +230,7 @@ func (c *Client) SendMessage(message WritableClientMessage) bool {
func (c *Client) ReadPump() {
defer func() {
c.Close()
close(c.messageChan)
}()
addr := c.RemoteAddr()