From 3b183c69a33640398a778ccd52bd79c1f3393d14 Mon Sep 17 00:00:00 2001 From: Yilun Date: Fri, 17 Feb 2023 01:16:25 -0800 Subject: [PATCH] Fix zero writeTimeout cause write failure Signed-off-by: Yilun --- client.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/client.go b/client.go index 28092a64..4700a335 100644 --- a/client.go +++ b/client.go @@ -785,7 +785,11 @@ func (c *Client) handleReconnect() { func (c *Client) writeMessage(buf []byte, writeTimeout time.Duration) error { c.lock.Lock() - c.conn.SetWriteDeadline(time.Now().Add(writeTimeout)) + if writeTimeout == 0 { + c.conn.SetWriteDeadline(zeroTime) + } else { + c.conn.SetWriteDeadline(time.Now().Add(writeTimeout)) + } err := c.conn.WriteMessage(websocket.BinaryMessage, buf) c.lock.Unlock() if err != nil {