forked from cwtch.im/cwtch
Prevent Duplicate Queue Subscription
This commit is contained in:
parent
9cb62d269e
commit
3e0680943a
|
@ -95,6 +95,11 @@ func (em *manager) initialize() {
|
||||||
func (em *manager) Subscribe(eventType Type, queue Queue) {
|
func (em *manager) Subscribe(eventType Type, queue Queue) {
|
||||||
em.mapMutex.Lock()
|
em.mapMutex.Lock()
|
||||||
defer em.mapMutex.Unlock()
|
defer em.mapMutex.Unlock()
|
||||||
|
for _, sub := range em.subscribers[eventType] {
|
||||||
|
if sub == queue {
|
||||||
|
return // don't add the same queue for the same event twice...
|
||||||
|
}
|
||||||
|
}
|
||||||
em.subscribers[eventType] = append(em.subscribers[eventType], queue)
|
em.subscribers[eventType] = append(em.subscribers[eventType], queue)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue