File tree Expand file tree Collapse file tree 1 file changed +15
-8
lines changed Expand file tree Collapse file tree 1 file changed +15
-8
lines changed Original file line number Diff line number Diff line change @@ -79,14 +79,8 @@ export default class SessionService extends Service {
79
79
}
80
80
81
81
win . close ( ) ;
82
- if ( event . origin !== window . location . origin || ! event . data ) {
83
- return ;
84
- }
85
82
86
- let { code, state } = event . data ;
87
- if ( ! code || ! state ) {
88
- return ;
89
- }
83
+ let { code, state } = event ;
90
84
91
85
let response = await fetch ( `/api/private/session/authorize?code=${ code } &state=${ state } ` ) ;
92
86
if ( ! response . ok ) {
@@ -112,7 +106,20 @@ export default class SessionService extends Service {
112
106
} ) ;
113
107
114
108
windowEventWatcherTask = task ( async ( ) => {
115
- return await waitForEvent ( window , 'message' ) ;
109
+ // eslint-disable-next-line no-constant-condition
110
+ while ( true ) {
111
+ let event = await waitForEvent ( window , 'message' ) ;
112
+ if ( event . origin !== window . location . origin || ! event . data ) {
113
+ continue ;
114
+ }
115
+
116
+ let { code, state } = event . data ;
117
+ if ( ! code || ! state ) {
118
+ continue ;
119
+ }
120
+
121
+ return { code, state } ;
122
+ }
116
123
} ) ;
117
124
118
125
windowCloseWatcherTask = task ( async window => {
You can’t perform that action at this time.
0 commit comments