Bug 1511345 Follow-up: Don't blow up on empty addonStartup.json r=zombie a=RyanVM
authorAndrew Swan <aswan@mozilla.com>
Fri, 30 Nov 2018 11:12:34 -0800
changeset 448961 b1446de2dd1361ef4996ec6777f8058407523f76
parent 448958 bb2815518fc776afaf5e54a3fb4c9d2c5e66ed0e
child 448962 83498d8e8878200f944b593b866200bbb7ceedbf
child 449020 5b9090976a4afd897b787342ef6fbbb3f73113d8
child 449041 950f6d29da967b9999ce709e94bf35b244f79100
push id110277
push userryanvm@gmail.com
push dateFri, 30 Nov 2018 19:17:17 +0000
treeherdermozilla-inbound@83498d8e8878 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerszombie, RyanVM
bugs1511345
milestone65.0a1
first release with
nightly linux32
b1446de2dd13 / 65.0a1 / 20181130191449 / files
nightly linux64
b1446de2dd13 / 65.0a1 / 20181130191449 / files
nightly mac
b1446de2dd13 / 65.0a1 / 20181130191449 / files
nightly win32
b1446de2dd13 / 65.0a1 / 20181130191449 / files
nightly win64
b1446de2dd13 / 65.0a1 / 20181130191449 / files
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
releases
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1511345 Follow-up: Don't blow up on empty addonStartup.json r=zombie a=RyanVM
toolkit/mozapps/extensions/internal/XPIProvider.jsm
--- a/toolkit/mozapps/extensions/internal/XPIProvider.jsm
+++ b/toolkit/mozapps/extensions/internal/XPIProvider.jsm
@@ -1247,18 +1247,18 @@ var XPIStates = {
     } catch (e) {
       logger.warn("Error parsing extensions state: ${error}",
                   {error: e});
     }
 
     // When upgrading from a build prior to bug 857456, convert startup
     // metadata.
     let done = false;
-    for (let location of Object.values(state)) {
-      for (let data of Object.values(location.addons)) {
+    for (let location of Object.values(state || {})) {
+      for (let data of Object.values(location.addons || {})) {
         if (!migrateAddonLoader(data)) {
           done = true;
           break;
         }
       }
       if (done) {
         break;
       }