From 82faa8991219a836bd47a70f21f6bc02346cfcbe Mon Sep 17 00:00:00 2001 From: Riley Testut Date: Mon, 18 Apr 2022 15:46:57 -0700 Subject: [PATCH] Updates Keychain.patreonAccountID in PatreonAPI.fetchAccount() PatreonAPI.fetchAccount() is called by both PatreonAPI.authenticate() and PatreonAPI.refreshPatreonAccount(), so this ensures the keychain is updated via both ways. --- AltStoreCore/Patreon/PatreonAPI.swift | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/AltStoreCore/Patreon/PatreonAPI.swift b/AltStoreCore/Patreon/PatreonAPI.swift index 74b259b2..92db9608 100644 --- a/AltStoreCore/Patreon/PatreonAPI.swift +++ b/AltStoreCore/Patreon/PatreonAPI.swift @@ -120,15 +120,7 @@ public extension PatreonAPI Keychain.shared.patreonAccessToken = accessToken Keychain.shared.patreonRefreshToken = refreshToken - self.fetchAccount { (result) in - switch result - { - case .success(let account): Keychain.shared.patreonAccountID = account.identifier - case .failure: break - } - - completion(result) - } + self.fetchAccount(completion: completion) } } } @@ -168,6 +160,7 @@ public extension PatreonAPI case .success(let response): DatabaseManager.shared.persistentContainer.performBackgroundTask { (context) in let account = PatreonAccount(response: response, context: context) + Keychain.shared.patreonAccountID = account.identifier completion(.success(account)) } }