rem: if (canQuitApplication()) Components.classes["@mozilla.org/toolkit/app-startup;1"].getService(nsIAppStartup) .quit(nsIAppStartup.eRestart | nsIAppStartup.eAttemptQuit); 
add:  var os = Components.classes["@mozilla.org/observer-service;1"] .getService(Components.interfaces.nsIObserverService); var cancelQuit = Components.classes["@mozilla.org/supports-PRBool;1"] .createInstance(Components.interfaces.nsISupportsPRBool); os.notifyObservers(cancelQuit, "quit-application-requested", null);   if (cancelQuit.data) return;   os.notifyObservers(null, "quit-application-granted", null);   var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"] .getService(Components.interfaces.nsIWindowMediator); var windows = wm.getEnumerator(null); while (windows.hasMoreElements()) { var win = windows.getNext(); if (("tryToClose" in win) && !win.tryToClose()) return; } Components.classes["@mozilla.org/toolkit/app-startup;1"].getService(nsIAppStartup) .quit(nsIAppStartup.eRestart | nsIAppStartup.eAttemptQuit); 
context: function restartApp() {  const nsIAppStartup = Components.interfaces.nsIAppStartup;  if (canQuitApplication())    Components.classes["@mozilla.org/toolkit/app-startup;1"].getService(nsIAppStartup)              .quit(nsIAppStartup.eRestart | nsIAppStartup.eAttemptQuit);}
meta: 8395	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/8395/346a97c59451ae803a1c370bfa24ae36f2cba33e/list.js/buggy/toolkit/mozapps/extensions/content/list.js