diff --git a/relay.go b/relay.go index 086f6bd..ad51421 100644 --- a/relay.go +++ b/relay.go @@ -230,14 +230,13 @@ func (r *Relay) Publish(ctx context.Context, event Event) Status { // publish event if err := r.Connection.WriteJSON([]interface{}{"EVENT", event}); err != nil { + // update status (this will be returned later) + mu.Lock() + status = PublishStatusSent + mu.Unlock() return status } - // update status (this will be returned later) - mu.Lock() - status = PublishStatusSent - mu.Unlock() - sub := r.Subscribe(ctx, Filters{Filter{IDs: []string{event.ID}}}) defer mu.Unlock() for {