diff --git a/relay.go b/relay.go index 64e266a..c1ccd19 100644 --- a/relay.go +++ b/relay.go @@ -316,7 +316,11 @@ func (r *Relay) newConnection(ctx context.Context, httpClient *http.Client) erro } msg := string(buf.Bytes()) - readQueue <- msg + select { + case readQueue <- msg: + case <-connCtx.Done(): + return + } } }()