From 249848d978733070f15ad26b31ccbc893216f7ea Mon Sep 17 00:00:00 2001 From: Riley Testut Date: Tue, 5 Nov 2019 13:26:01 -0800 Subject: [PATCH] Fixes endless loading when sideloading invalid app --- AltStore/My Apps/MyAppsViewController.swift | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/AltStore/My Apps/MyAppsViewController.swift b/AltStore/My Apps/MyAppsViewController.swift index 8924a624..3206583c 100644 --- a/AltStore/My Apps/MyAppsViewController.swift +++ b/AltStore/My Apps/MyAppsViewController.swift @@ -629,7 +629,7 @@ private extension MyAppsViewController let unzippedApplicationURL = try FileManager.default.unzipAppBundle(at: fileURL, toDirectory: temporaryDirectory) - guard let application = ALTApplication(fileURL: unzippedApplicationURL) else { return } + guard let application = ALTApplication(fileURL: unzippedApplicationURL) else { throw OperationError.invalidApp } self.sideloadingProgress = AppManager.shared.install(application, presentingViewController: self) { (result) in try? FileManager.default.removeItem(at: temporaryDirectory) @@ -638,7 +638,7 @@ private extension MyAppsViewController if let error = result.error { let toastView = ToastView(text: error.localizedDescription, detailText: nil) - toastView.show(in: self.view, duration: 2.0) + toastView.show(in: self.navigationController?.view ?? self.view, duration: 2.0) } else { @@ -663,7 +663,12 @@ private extension MyAppsViewController { try? FileManager.default.removeItem(at: temporaryDirectory) - self.navigationItem.leftBarButtonItem?.isIndicatingActivity = false + DispatchQueue.main.async { + self.navigationItem.leftBarButtonItem?.isIndicatingActivity = false + + let toastView = ToastView(text: error.localizedDescription, detailText: nil) + toastView.show(in: self.navigationController?.view ?? self.view, duration: 2.0) + } completion(.failure(error)) }