diff --git a/Frameworks/Account/CloudKit/CloudKitAccountDelegate.swift b/Frameworks/Account/CloudKit/CloudKitAccountDelegate.swift index 3f714497b..070fd05b7 100644 --- a/Frameworks/Account/CloudKit/CloudKitAccountDelegate.swift +++ b/Frameworks/Account/CloudKit/CloudKitAccountDelegate.swift @@ -488,14 +488,21 @@ private extension CloudKitAccountDelegate { accountZone.fetchChangesInZone() { result in self.refreshProgress.completeTask() + let webFeeds = account.flattenedWebFeeds() + self.refreshProgress.addToNumberOfTasksAndRemaining(webFeeds.count) + switch result { case .success: self.refreshArticleStatus(for: account) { result in self.refreshProgress.completeTask() switch result { case .success: - account.metadata.lastArticleFetchEndTime = Date() - completion(.success(())) + + self.combinedRefresh(account, webFeeds) { + self.refreshProgress.clear() + account.metadata.lastArticleFetchEndTime = Date() + } + case .failure(let error): fail(error) }