@@ -55,7 +55,7 @@ class GoTrueClient {
55
55
int _refreshTokenRetryCount = 0 ;
56
56
57
57
/// Completer to combine multiple simultaneous token refresh requests.
58
- Completer <AuthResponse >? _refreshTokenCompleter;
58
+ Completer <AuthResponse ? >? _refreshTokenCompleter;
59
59
60
60
final _onAuthStateChangeController = BehaviorSubject <AuthState >();
61
61
final _onAuthStateChangeControllerSync =
@@ -1065,7 +1065,7 @@ class GoTrueClient {
1065
1065
print ("🦁 CALLING REFRESH TOKEN 🦁" );
1066
1066
if (_refreshTokenCompleter? .isCompleted ?? true ) {
1067
1067
print ("🦁 CREATING NEW FUTURE 🦁" );
1068
- _refreshTokenCompleter = Completer <AuthResponse >();
1068
+ _refreshTokenCompleter = Completer <AuthResponse ? >();
1069
1069
// Catch any error in case nobody awaits the future
1070
1070
_refreshTokenCompleter! .future.then (
1071
1071
(value) => null ,
@@ -1074,14 +1074,14 @@ class GoTrueClient {
1074
1074
try {
1075
1075
(_refreshTokenCompleter! .future as Future <void >).timeout (const Duration (seconds: 10 ), onTimeout: () {
1076
1076
if (! _refreshTokenCompleter! .isCompleted) {
1077
- _refreshTokenCompleter! .completeError ( TimeoutException ( "Timeout" ), StackTrace .current );
1077
+ _refreshTokenCompleter! .complete ( null );
1078
1078
}
1079
1079
1080
1080
throw TimeoutException ("Timeout" );
1081
1081
});
1082
1082
} catch (error, stackTrace) {
1083
1083
print ("🦁 TIMED OUT SELF FUTURE 🦁" );
1084
- return Future . error (error, stackTrace) ;
1084
+ return null ;
1085
1085
}
1086
1086
} else if (! ignorePendingRequest) {
1087
1087
print ("🦁 RETURNING EXISTING FUTURE 🦁" );
@@ -1128,8 +1128,9 @@ class GoTrueClient {
1128
1128
accessToken: accessToken,
1129
1129
);
1130
1130
if (! _refreshTokenCompleter! .isCompleted) {
1131
- _refreshTokenCompleter! .completeError (e, stack );
1131
+ _refreshTokenCompleter! .complete ( null );
1132
1132
}
1133
+ return null ;
1133
1134
} catch (error, stack) {
1134
1135
print ("🦁 OTHER EXCEPTION 🦁: $error $stack " );
1135
1136
0 commit comments