Skip to content

Commit 6d55e4e

Browse files
authored
fix(server/sse): potential goroutine leak in Heartbeat sender (#236)
1 parent 90bd877 commit 6d55e4e

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

server/sse.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -367,7 +367,12 @@ func (s *SSEServer) handleSSE(w http.ResponseWriter, r *http.Request) {
367367
}
368368
messageBytes, _ := json.Marshal(message)
369369
pingMsg := fmt.Sprintf("event: message\ndata:%s\n\n", messageBytes)
370-
session.eventQueue <- pingMsg
370+
select {
371+
case session.eventQueue <- pingMsg:
372+
// Message sent successfully
373+
case <-session.done:
374+
return
375+
}
371376
case <-session.done:
372377
return
373378
case <-r.Context().Done():

0 commit comments

Comments
 (0)