diff --git a/mozilla/toolkit/mozapps/extensions/content/extensions.js b/mozilla/toolkit/mozapps/extensions/content/extensions.js index 9840533a0fb..dd060dbddc4 100644 --- a/mozilla/toolkit/mozapps/extensions/content/extensions.js +++ b/mozilla/toolkit/mozapps/extensions/content/extensions.js @@ -1398,7 +1398,10 @@ function installUpdatesAll() { function restartApp() { const nsIAppStartup = Components.interfaces.nsIAppStartup; - if (canQuitApplication()) + + if (gUpdatesOnly) + window.close(); + else if (canQuitApplication()) Components.classes["@mozilla.org/toolkit/app-startup;1"].getService(nsIAppStartup) .quit(nsIAppStartup.eRestart | nsIAppStartup.eAttemptQuit); } diff --git a/mozilla/toolkit/mozapps/extensions/src/nsExtensionManager.js.in b/mozilla/toolkit/mozapps/extensions/src/nsExtensionManager.js.in index 739dc8304ac..cbf8500016e 100644 --- a/mozilla/toolkit/mozapps/extensions/src/nsExtensionManager.js.in +++ b/mozilla/toolkit/mozapps/extensions/src/nsExtensionManager.js.in @@ -2709,7 +2709,6 @@ ExtensionManager.prototype = { break; case "profile-after-change": this._profileSelected(); - this._showUpdatesWindow(); break; case "quit-application-requested": this._confirmCancelDownloadsOnQuit(subject); @@ -2857,6 +2856,8 @@ ExtensionManager.prototype = { var isDirty = false; var forceAutoReg = false; + this._showUpdatesWindow(); + // Somehow the component list went away, and for that reason the new one // generated by this function is going to result in a different compreg. // We must force a restart.