mirror of
https://github.com/atom/atom.git
synced 2026-02-12 15:45:23 -05:00
Calls to EventEmitter#pause and #resume can be nested
This commit is contained in:
@@ -66,12 +66,15 @@ module.exports =
|
||||
@afterUnsubscribe?() if @subscriptionCount() < subscriptionCountBefore
|
||||
|
||||
pauseEvents: ->
|
||||
@queuedEvents = []
|
||||
@pauseCount ?= 0
|
||||
if @pauseCount++ == 0
|
||||
@queuedEvents ?= []
|
||||
|
||||
resumeEvents: ->
|
||||
queuedEvents = @queuedEvents
|
||||
@queuedEvents = null
|
||||
@trigger(event...) for event in queuedEvents
|
||||
if --@pauseCount == 0
|
||||
queuedEvents = @queuedEvents
|
||||
@queuedEvents = null
|
||||
@trigger(event...) for event in queuedEvents
|
||||
|
||||
subscriptionCount: ->
|
||||
count = 0
|
||||
|
||||
Reference in New Issue
Block a user