khatru: only kill connection once.

This commit is contained in:
fiatjaf
2026-02-08 10:59:51 -03:00
parent 28bef1c990
commit a98ac0d050
+11 -8
View File
@@ -108,17 +108,20 @@ func (rl *Relay) HandleWebsocket(w http.ResponseWriter, r *http.Request) {
),
)
killOnce := sync.Once{}
kill := func() {
if nil != rl.OnDisconnect {
rl.OnDisconnect(ctx)
}
killOnce.Do(func() {
if nil != rl.OnDisconnect {
rl.OnDisconnect(ctx)
}
ticker.Stop()
cancel()
ws.cancel()
ws.conn.Close()
ticker.Stop()
cancel()
ws.cancel()
ws.conn.Close()
rl.removeClientAndListeners(ws)
rl.removeClientAndListeners(ws)
})
}
go func() {