diff --git a/src/org/lineageos/updater/controller/ABUpdateInstaller.java b/src/org/lineageos/updater/controller/ABUpdateInstaller.java index 7978e31f..25242965 100644 --- a/src/org/lineageos/updater/controller/ABUpdateInstaller.java +++ b/src/org/lineageos/updater/controller/ABUpdateInstaller.java @@ -141,6 +141,9 @@ class ABUpdateInstaller { File file = mUpdaterController.getActualUpdate(mDownloadId).getFile(); if (!file.exists()) { Log.e(TAG, "The given update doesn't exist"); + mUpdaterController.getActualUpdate(downloadId) + .setStatus(UpdateStatus.INSTALLATION_FAILED); + mUpdaterController.notifyUpdateChange(downloadId); return false; } @@ -175,6 +178,9 @@ class ABUpdateInstaller { mUpdateEngine = new UpdateEngine(); if (!mUpdateEngine.bind(mUpdateEngineCallback)) { Log.e(TAG, "Could not bind"); + mUpdaterController.getActualUpdate(downloadId) + .setStatus(UpdateStatus.INSTALLATION_FAILED); + mUpdaterController.notifyUpdateChange(downloadId); return false; } String zipFileUri = "file://" + file.getAbsolutePath(); diff --git a/src/org/lineageos/updater/controller/UpdateInstaller.java b/src/org/lineageos/updater/controller/UpdateInstaller.java index f0d41c95..aaae06b9 100644 --- a/src/org/lineageos/updater/controller/UpdateInstaller.java +++ b/src/org/lineageos/updater/controller/UpdateInstaller.java @@ -76,8 +76,10 @@ class UpdateInstaller { try { android.os.RecoverySystem.installPackage(mContext, update); } catch (IOException e) { - // TODO: show error message Log.e(TAG, "Could not install update", e); + mUpdaterController.getActualUpdate(downloadId) + .setStatus(UpdateStatus.INSTALLATION_FAILED); + mUpdaterController.notifyUpdateChange(downloadId); } } diff --git a/src/org/lineageos/updater/controller/UpdaterService.java b/src/org/lineageos/updater/controller/UpdaterService.java index 03fcf8d3..c151a4a2 100644 --- a/src/org/lineageos/updater/controller/UpdaterService.java +++ b/src/org/lineageos/updater/controller/UpdaterService.java @@ -187,7 +187,9 @@ public class UpdaterService extends Service { } } catch (IOException e) { Log.e(TAG, "Could not install update", e); - // TODO: user facing message + mUpdaterController.getActualUpdate(downloadId) + .setStatus(UpdateStatus.INSTALLATION_FAILED); + mUpdaterController.notifyUpdateChange(downloadId); } } else if (ACTION_INSTALL_STOP.equals(intent.getAction())) { if (UpdateInstaller.isInstalling()) {