diff options
Diffstat (limited to 'toolkit/content/aboutSupport.js')
-rw-r--r-- | toolkit/content/aboutSupport.js | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/toolkit/content/aboutSupport.js b/toolkit/content/aboutSupport.js index 7209b7ad0..4e42a5687 100644 --- a/toolkit/content/aboutSupport.js +++ b/toolkit/content/aboutSupport.js @@ -42,6 +42,9 @@ var snapshotFormatters = { $("os-box").textContent = data.osVersion; $("supportLink").href = data.supportURL; let version = AppConstants.MOZ_APP_VERSION_DISPLAY; + if (data.versionArch) { + version += " (" + data.versionArch + ")"; + } if (data.vendor) version += " (" + data.vendor + ")"; $("version-box").textContent = version; @@ -876,16 +879,25 @@ function populateActionBox() { } } -// Prompt user to restart the browser in safe mode -function safeModeRestart() { +// Prompt user to restart the browser +function restart(safeMode) { let cancelQuit = Cc["@mozilla.org/supports-PRBool;1"] .createInstance(Ci.nsISupportsPRBool); Services.obs.notifyObservers(cancelQuit, "quit-application-requested", "restart"); - if (!cancelQuit.data) { - Services.startup.restartInSafeMode(Ci.nsIAppStartup.eAttemptQuit); + if (cancelQuit.data) { + return; + } + + let flags = Ci.nsIAppStartup.eAttemptQuit; + + if (safeMode) { + Services.startup.restartInSafeMode(flags); + } else { + Services.startup.quit(flags | Ci.nsIAppStartup.eRestart); } } + /** * Set up event listeners for buttons. */ @@ -912,9 +924,12 @@ function setupEventListeners() { if (Services.obs.enumerateObservers("restart-in-safe-mode").hasMoreElements()) { Services.obs.notifyObservers(null, "restart-in-safe-mode", ""); } else { - safeModeRestart(); + restart(true); } }); + $("restart-button").addEventListener("click", function(event) { + restart(false); + }); $("verify-place-integrity-button").addEventListener("click", function(event) { PlacesDBUtils.checkAndFixDatabase(function(aLog) { let msg = aLog.join("\n"); |