File tree Expand file tree Collapse file tree 2 files changed +7
-5
lines changed
packages/firestore/src/api Expand file tree Collapse file tree 2 files changed +7
-5
lines changed Original file line number Diff line number Diff line change @@ -232,7 +232,7 @@ export class FirebaseCredentialsProvider implements CredentialsProvider {
232
232
asyncQueue : AsyncQueue ,
233
233
changeListener : CredentialChangeListener
234
234
) : void {
235
- let lastTokenId = - 1 ;
235
+ let lastTokenId = this . tokenCounter ;
236
236
237
237
// A change listener that prevents double-firing for the same token change.
238
238
const guardedChangeListener : ( user : User ) => Promise < void > = user => {
@@ -290,9 +290,11 @@ export class FirebaseCredentialsProvider implements CredentialsProvider {
290
290
} , 0 ) ;
291
291
292
292
asyncQueue . enqueueRetryable ( async ( ) => {
293
- // Call the change listener inline to block on the user change.
294
- await nextToken . promise ;
295
- await guardedChangeListener ( this . currentUser ) ;
293
+ // If we have not received a token, wait for the first one.
294
+ if ( this . tokenCounter === 0 ) {
295
+ await nextToken . promise ;
296
+ await guardedChangeListener ( this . currentUser ) ;
297
+ }
296
298
} ) ;
297
299
}
298
300
Original file line number Diff line number Diff line change @@ -58,7 +58,7 @@ import { cast } from '../util/input_validation';
58
58
import { Deferred } from '../util/promise' ;
59
59
60
60
import { LoadBundleTask } from './bundle' ;
61
- import { CredentialsProvider } from " ./credentials" ;
61
+ import { CredentialsProvider } from ' ./credentials' ;
62
62
import { PersistenceSettings , FirestoreSettings } from './settings' ;
63
63
export {
64
64
connectFirestoreEmulator ,
You can’t perform that action at this time.
0 commit comments