From 7b5b88a75e2d180807c43577a75c0a7c6118de0b Mon Sep 17 00:00:00 2001 From: NatureFreshMilk Date: Thu, 7 Feb 2019 08:08:54 +0100 Subject: [PATCH] ws close --- server/web/ws.go | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/server/web/ws.go b/server/web/ws.go index 01c97da..bfccd49 100644 --- a/server/web/ws.go +++ b/server/web/ws.go @@ -64,17 +64,16 @@ func (t *WS) ServeHTTP(resp http.ResponseWriter, req *http.Request) { t.channels[id] = ch t.mutex.Unlock() - defer func() { - t.mutex.Lock() - delete(t.channels, id) - close(ch) - t.mutex.Unlock() - }() - for { - data := <-ch - conn.WriteMessage(websocket.TextMessage, data) + err := conn.WriteMessage(websocket.TextMessage, data) + if err != nil { + break + } } + t.mutex.Lock() + delete(t.channels, id) + close(ch) + t.mutex.Unlock() }