Fixes “Check for Updates” not updating any sources if one source fails

This commit is contained in:
Riley Testut
2023-05-29 18:15:16 -05:00
committed by Magesh K
parent e03813c19e
commit f5b63b52b4

View File

@@ -1502,18 +1502,25 @@ private extension MyAppsViewController
} }
} }
do
{
do
{
let (_, context) = try await result let (_, context) = try await result
try await context.performAsync { try await context.performAsync {
do
{
try context.save() try context.save()
} }
}
catch let error as AppManager.FetchSourcesError catch let error as AppManager.FetchSourcesError
{ {
try await error.managedObjectContext?.performAsync {
try error.managedObjectContext?.save() try error.managedObjectContext?.save()
}
throw error throw error
} }
}
catch let mergeError as MergeError catch let mergeError as MergeError
{ {
guard let sourceID = mergeError.sourceID else { throw mergeError } guard let sourceID = mergeError.sourceID else { throw mergeError }
@@ -1536,7 +1543,6 @@ private extension MyAppsViewController
throw mergeError throw mergeError
} }
} }
}
catch let error as NSError catch let error as NSError
{ {
let toastView = ToastView(error: error.withLocalizedTitle(NSLocalizedString("Unable to Check for Updates", comment: ""))) let toastView = ToastView(error: error.withLocalizedTitle(NSLocalizedString("Unable to Check for Updates", comment: "")))