Bug 1451122 - Catch errors on uninstallable add-ons. r=felipe draft
authorMichael Kaply <mozilla@kaply.com>
Tue, 03 Apr 2018 16:15:13 -0500
changeset 776879 7eb6115d953a21c993398894d2e6361fc4601fa8
parent 776840 0f4ba9825eaf718f19f696cc1ad93932eb0aa9fc
push id105026
push usermozilla@kaply.com
push dateTue, 03 Apr 2018 21:15:43 +0000
reviewersfelipe
bugs1451122
milestone61.0a1
Bug 1451122 - Catch errors on uninstallable add-ons. r=felipe MozReview-Commit-ID: 1zbCuHp5yEt
browser/components/enterprisepolicies/Policies.jsm
--- a/browser/components/enterprisepolicies/Policies.jsm
+++ b/browser/components/enterprisepolicies/Policies.jsm
@@ -409,17 +409,22 @@ var Policies = {
           }
         });
       }
       if ("Uninstall" in param) {
         runOncePerModification("extensionsUninstall", JSON.stringify(param.Uninstall), () => {
           AddonManager.getAddonsByIDs(param.Uninstall, (addons) => {
             for (let addon of addons) {
               if (addon) {
-                addon.uninstall();
+                try {
+                  addon.uninstall();
+                } catch (e) {
+                  // This can fail for add-ons that can't be uninstalled.
+                  // Just ignore.
+                }
               }
             }
           });
         });
       }
       if ("Locked" in param) {
         for (let ID of param.Locked) {
           manager.disallowFeature(`modify-extension:${ID}`);