File tree Expand file tree Collapse file tree 1 file changed +9
-1
lines changed Expand file tree Collapse file tree 1 file changed +9
-1
lines changed Original file line number Diff line number Diff line change @@ -61,6 +61,7 @@ export class Remote {
61
61
62
62
// Used to race between the login dialog and the logging in from a different window
63
63
private loginDetectedResolver : ( ( ) => void ) | undefined ;
64
+ private loginDetectedRejector : ( ( reason ?: Error ) => void ) | undefined ;
64
65
private loginDetectedPromise : Promise < void > = Promise . resolve ( ) ;
65
66
66
67
public constructor (
@@ -78,8 +79,14 @@ export class Remote {
78
79
* Creates a new promise that will be resolved when login is detected in another window.
79
80
*/
80
81
private createLoginDetectionPromise ( ) : void {
81
- this . loginDetectedPromise = new Promise < void > ( ( resolve ) => {
82
+ if ( this . loginDetectedRejector ) {
83
+ this . loginDetectedRejector (
84
+ new Error ( "Login detection cancelled - new login attempt started" ) ,
85
+ ) ;
86
+ }
87
+ this . loginDetectedPromise = new Promise < void > ( ( resolve , reject ) => {
82
88
this . loginDetectedResolver = resolve ;
89
+ this . loginDetectedRejector = reject ;
83
90
} ) ;
84
91
}
85
92
@@ -90,6 +97,7 @@ export class Remote {
90
97
if ( this . loginDetectedResolver ) {
91
98
this . loginDetectedResolver ( ) ;
92
99
this . loginDetectedResolver = undefined ;
100
+ this . loginDetectedRejector = undefined ;
93
101
}
94
102
}
95
103
You can’t perform that action at this time.
0 commit comments