Skip to content

Commit

Permalink
Merge pull request #7115 from vector-im/andy/mandatory_crypto
Browse files Browse the repository at this point in the history
Do not retry initial sync on fatal errors
  • Loading branch information
Anderas authored Dec 5, 2022
2 parents 0a7ed27 + df31c30 commit ed5bb99
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 0 deletions.
11 changes: 11 additions & 0 deletions Riot/Modules/MatrixKit/Models/Account/MXKAccount.m
Original file line number Diff line number Diff line change
Expand Up @@ -890,6 +890,9 @@ -(void)openSessionWithStore:(id<MXStore>)store
MXStrongifyAndReturnIfNil(self);
self->mxSession = nil;

NSString *myUserId = self.mxSession.myUser.userId;
[[NSNotificationCenter defaultCenter] postNotificationName:kMXKErrorNotification object:error userInfo:myUserId ? @{kMXKErrorUserIdKey: myUserId} : nil];

[[NSNotificationCenter defaultCenter] removeObserver:self->sessionStateObserver];
self->sessionStateObserver = nil;

Expand Down Expand Up @@ -1677,6 +1680,14 @@ - (void)launchInitialServerSync
NSString *myUserId = self.mxSession.myUser.userId;
[[NSNotificationCenter defaultCenter] postNotificationName:kMXKErrorNotification object:error userInfo:myUserId ? @{kMXKErrorUserIdKey: myUserId} : nil];
}

// If we cannot resolve this error by retrying, exit early
BOOL isRetryableError = [error.domain isEqualToString:NSURLErrorDomain] || [MXHTTPOperation urlResponseFromError:error] != nil;
if (!isRetryableError)
{
MXLogDebug(@"[MXKAccount] Initial sync will not be retried");
return;
}

// Check if it is a network connectivity issue
AFNetworkReachabilityManager *networkReachabilityManager = [AFNetworkReachabilityManager sharedManager];
Expand Down
1 change: 1 addition & 0 deletions changelog.d/pr-7115.change
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Session: Do not retry initial sync on fatal errors

0 comments on commit ed5bb99

Please sign in to comment.