Bug 1401584 Properly cancel local installs of incompatible extensions
MozReview-Commit-ID: EmRZQZeh0jQ
--- a/toolkit/mozapps/extensions/AddonManager.jsm
+++ b/toolkit/mozapps/extensions/AddonManager.jsm
@@ -1996,18 +1996,19 @@ var AddonManagerInternal = {
},
startInstall(browser, url, install) {
this.installNotifyObservers("addon-install-started", browser, url, install);
// Local installs may already be in a failed state in which case
// we won't get any further events, detect those cases now.
if (install.state == AddonManager.STATE_DOWNLOADED && install.addon.appDisabled) {
- this.installNotifyObservers("addon-install-failed", browser, url, install);
- return;
+ install.cancel();
+ this.installNotifyObservers("addon-install-failed", browser, url, install);
+ return;
}
let self = this;
let listener = {
onDownloadCancelled() {
install.removeListener(listener);
},