From c7d08fba46b897506c311cf671e5537b6e6c6122 Mon Sep 17 00:00:00 2001 From: Matthew Chen Date: Tue, 14 Feb 2017 16:15:23 -0500 Subject: [PATCH] Avoid checking prekeys twice on app launch. // FREEBIE --- Signal/src/AppDelegate.m | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/Signal/src/AppDelegate.m b/Signal/src/AppDelegate.m index 0c2962f41..af50d6c23 100644 --- a/Signal/src/AppDelegate.m +++ b/Signal/src/AppDelegate.m @@ -164,8 +164,6 @@ static NSString *const kURLHostVerifyPrefix = @"verify"; DDLogDebug(@"%@ Failed to run syncPushTokensJob with error: %@", self.tag, error); }); - [TSPreKeyManager refreshPreKeys]; - // Clean up any messages that expired since last launch. [[[OWSDisappearingMessagesJob alloc] initWithStorageManager:[TSStorageManager sharedManager]] run]; [AppStoreRating setupRatingLibrary]; @@ -285,7 +283,15 @@ static NSString *const kURLHostVerifyPrefix = @"verify"; [self removeScreenProtection]; - [TSPreKeyManager checkPreKeysIfNecessary]; + static BOOL hasCheckedPrekeys = NO; + if (!hasCheckedPrekeys) { + // Always check prekeys after app launches... + [TSPreKeyManager refreshPreKeys]; + hasCheckedPrekeys = YES; + } else { + // ...and sometimes check on app activation. + [TSPreKeyManager checkPreKeysIfNecessary]; + } } - (void)applicationWillResignActive:(UIApplication *)application {