File tree 1 file changed +7
-4
lines changed
1 file changed +7
-4
lines changed Original file line number Diff line number Diff line change @@ -52,6 +52,11 @@ export class StateQueueManager implements Disposable {
52
52
orphans : StateObject [ ] = [ ] , // states that don't yet have a parent registered
53
53
previousQueueLength = { } ; // keep track of how long the queue when an orphan was first encountered
54
54
const getState = name => this . states . hasOwnProperty ( name ) && this . states [ name ] ;
55
+ const notifyListeners = ( ) => {
56
+ if ( registered . length ) {
57
+ this . listeners . forEach ( listener => listener ( 'registered' , registered . map ( s => s . self ) ) ) ;
58
+ }
59
+ } ;
55
60
56
61
while ( queue . length > 0 ) {
57
62
const state : StateObject = queue . shift ( ) ;
@@ -84,6 +89,7 @@ export class StateQueueManager implements Disposable {
84
89
// Wait until two consecutive iterations where no additional states were dequeued successfully.
85
90
// throw new Error(`Cannot register orphaned state '${name}'`);
86
91
queue . push ( state ) ;
92
+ notifyListeners ( ) ;
87
93
return states ;
88
94
} else if ( orphanIdx < 0 ) {
89
95
orphans . push ( state ) ;
@@ -92,10 +98,7 @@ export class StateQueueManager implements Disposable {
92
98
queue . push ( state ) ;
93
99
}
94
100
95
- if ( registered . length ) {
96
- this . listeners . forEach ( listener => listener ( 'registered' , registered . map ( s => s . self ) ) ) ;
97
- }
98
-
101
+ notifyListeners ( ) ;
99
102
return states ;
100
103
}
101
104
You can’t perform that action at this time.
0 commit comments