Bug 1312486 - Enable no-extra-boolean-cast, no-new-object, no-shadow-restricted-names, and spaced-comment rules for eslint. r=standard8
authorJared Wein <jwein@mozilla.com>
Mon, 24 Oct 2016 13:14:19 -0400
changeset 320382 62c5218b7325723c8d88d5c4cfe4fa241f905406
parent 320381 2cd8ae6771b2585a8abcdb4e5f930acca1e8a2e1
child 320383 0899c2b63e21814a51d18c415baa534bcb29fa8d
child 320589 77012ce07e577e0225292af9b6ee1b6661fe7caa
push id83367
push userphilringnalda@gmail.com
push dateTue, 01 Nov 2016 01:39:40 +0000
treeherdermozilla-inbound@50e030bdef66 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersstandard8
bugs1312486
milestone52.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1312486 - Enable no-extra-boolean-cast, no-new-object, no-shadow-restricted-names, and spaced-comment rules for eslint. r=standard8 MozReview-Commit-ID: 7Gx90a5y8t6
browser/base/content/aboutaccounts/aboutaccounts.js
browser/base/content/browser-addons.js
browser/base/content/browser-fullZoom.js
browser/base/content/browser-places.js
browser/base/content/browser-syncui.js
browser/base/content/browser.js
browser/base/content/content.js
browser/base/content/pageinfo/pageInfo.js
browser/base/content/sanitize.js
browser/base/content/sync/aboutSyncTabs.js
browser/base/content/sync/setup.js
browser/base/content/test/general/browser_aboutAccounts.js
browser/base/content/test/general/browser_aboutSupport_newtab_security_state.js
browser/base/content/test/general/browser_bug416661.js
browser/base/content/test/general/browser_bug767836_perwindowpb.js
browser/base/content/test/general/browser_bug822367.js
browser/base/content/test/general/browser_bug902156.js
browser/base/content/test/general/browser_contextmenu.js
browser/base/content/test/general/browser_csp_block_all_mixedcontent.js
browser/base/content/test/general/browser_double_close_tab.js
browser/base/content/test/general/browser_fxa_oauth.js
browser/base/content/test/general/browser_fxaccounts.js
browser/base/content/test/general/browser_gZipOfflineChild.js
browser/base/content/test/general/browser_mcb_redirect.js
browser/base/content/test/general/browser_no_mcb_on_http_site.js
browser/base/content/test/general/browser_sanitizeDialog.js
browser/base/content/test/general/browser_scope.js
browser/base/content/test/general/browser_tabs_owner.js
browser/base/content/test/general/contextmenu_common.js
browser/base/content/test/social/browser_blocklist.js
browser/base/content/test/social/browser_share.js
browser/base/content/test/social/browser_social_activation.js
browser/base/content/test/urlbar/browser_bug623155.js
browser/base/content/utilityOverlay.js
browser/base/content/web-panels.js
browser/components/customizableui/CustomizableUI.jsm
browser/components/customizableui/CustomizableWidgets.jsm
browser/components/customizableui/CustomizeMode.jsm
browser/components/customizableui/DragPositionManager.jsm
browser/components/customizableui/content/panelUI.xml
browser/components/customizableui/test/browser_942581_unregisterArea_keeps_placements.js
browser/components/customizableui/test/browser_952963_areaType_getter_no_area.js
browser/components/customizableui/test/browser_968447_bookmarks_toolbar_items_in_panel.js
browser/components/customizableui/test/browser_973641_button_addon.js
browser/components/customizableui/test/browser_995164_registerArea_during_customize_mode.js
browser/components/feeds/WebContentConverter.js
browser/components/migration/ESEDBReader.jsm
browser/components/migration/IEProfileMigrator.js
browser/components/migration/MSMigrationUtils.jsm
browser/components/migration/MigrationUtils.jsm
browser/components/migration/tests/unit/test_IE7_passwords.js
browser/components/newtab/NewTabMessages.jsm
browser/components/newtab/aboutNewTabService.js
browser/components/newtab/tests/browser/browser_newtab_overrides.js
browser/components/newtab/tests/xpcshell/test_NewTabSearchProvider.js
browser/components/nsBrowserContentHandler.js
browser/components/places/PlacesUIUtils.jsm
browser/components/places/content/bookmarkProperties.js
browser/components/places/content/places.js
browser/components/places/tests/browser/browser_bookmarksProperties.js
browser/components/places/tests/browser/browser_drag_bookmarks_on_toolbar.js
browser/components/places/tests/browser/browser_library_batch_delete.js
browser/components/places/tests/browser/browser_library_infoBox.js
browser/components/places/tests/browser/browser_library_middleclick.js
browser/components/places/tests/browser/browser_library_search.js
browser/components/places/tests/browser/browser_sort_in_library.js
browser/components/preferences/cookies.js
browser/components/preferences/in-content/applications.js
browser/components/preferences/in-content/subdialogs.js
browser/components/preferences/in-content/sync.js
browser/components/search/test/browser_426329.js
browser/components/search/test/browser_searchbar_openpopup.js
browser/components/search/test/head.js
browser/components/translation/test/unit/test_cld2.js
browser/components/uitour/test/browser_UITour_modalDialog.js
browser/experiments/Experiments.jsm
browser/modules/ContentWebRTC.jsm
browser/modules/PluginContent.jsm
browser/modules/WindowsJumpLists.jsm
browser/modules/WindowsPreviewPerTab.jsm
browser/modules/test/browser_UsageTelemetry.js
browser/modules/test/browser_UsageTelemetry_searchbar.js
browser/tools/mozscreenshots/mozscreenshots/extension/Screenshot.jsm
browser/tools/mozscreenshots/mozscreenshots/extension/TestRunner.jsm
browser/tools/mozscreenshots/mozscreenshots/extension/configurations/Toolbars.jsm
storage/test/unit/head_storage.js
storage/test/unit/test_js_helpers.js
storage/test/unit/test_locale_collation.js
storage/test/unit/test_sqlite_secure_delete.js
storage/test/unit/test_statement_executeAsync.js
storage/test/unit/test_storage_connection.js
toolkit/.eslintrc.js
toolkit/components/aboutmemory/content/aboutMemory.js
toolkit/components/addoncompat/CompatWarning.jsm
toolkit/components/addoncompat/Prefetcher.jsm
toolkit/components/addoncompat/tests/addon/bootstrap.js
toolkit/components/asyncshutdown/nsAsyncShutdown.js
toolkit/components/contentprefs/nsContentPrefService.js
toolkit/components/contentprefs/tests/unit/head_contentPrefs.js
toolkit/components/contentprefs/tests/unit/test_contentPrefs.js
toolkit/components/cookie/content/cookieAcceptDialog.js
toolkit/components/crashes/tests/xpcshell/test_crash_manager.js
toolkit/components/downloads/nsDownloadManagerUI.js
toolkit/components/downloads/test/unit/tail_download_manager.js
toolkit/components/downloads/test/unit/test_app_rep_maclinux.js
toolkit/components/downloads/test/unit/test_app_rep_windows.js
toolkit/components/exthelper/extApplication.js
toolkit/components/feeds/FeedProcessor.js
toolkit/components/filepicker/content/filepicker.js
toolkit/components/filepicker/nsFilePicker.js
toolkit/components/jsdownloads/src/DownloadCore.jsm
toolkit/components/jsdownloads/src/DownloadImport.jsm
toolkit/components/jsdownloads/src/DownloadLegacy.js
toolkit/components/jsdownloads/src/DownloadList.jsm
toolkit/components/jsdownloads/src/DownloadStore.jsm
toolkit/components/jsdownloads/src/DownloadUIHelper.jsm
toolkit/components/jsdownloads/src/Downloads.jsm
toolkit/components/jsdownloads/test/browser/head.js
toolkit/components/jsdownloads/test/unit/common_test_Download.js
toolkit/components/jsdownloads/test/unit/head.js
toolkit/components/jsdownloads/test/unit/test_DownloadCore.js
toolkit/components/jsdownloads/test/unit/test_DownloadImport.js
toolkit/components/jsdownloads/test/unit/test_DownloadIntegration.js
toolkit/components/jsdownloads/test/unit/test_DownloadLegacy.js
toolkit/components/jsdownloads/test/unit/test_DownloadList.js
toolkit/components/jsdownloads/test/unit/test_DownloadStore.js
toolkit/components/jsdownloads/test/unit/test_Downloads.js
toolkit/components/lz4/lz4_internal.js
toolkit/components/lz4/tests/xpcshell/data/worker_lz4.js
toolkit/components/microformats/microformat-shiv.js
toolkit/components/microformats/update/update.js
toolkit/components/passwordmgr/LoginHelper.jsm
toolkit/components/passwordmgr/LoginImport.jsm
toolkit/components/passwordmgr/LoginStore.jsm
toolkit/components/passwordmgr/content/passwordManager.js
toolkit/components/passwordmgr/nsLoginManager.js
toolkit/components/passwordmgr/storage-mozStorage.js
toolkit/components/passwordmgr/test/browser/browser_username_select_dialog.js
toolkit/components/passwordmgr/test/browser/subtst_notifications_5.html
toolkit/components/passwordmgr/test/browser/subtst_notifications_6.html
toolkit/components/passwordmgr/test/mochitest/test_basic_form_2pw_2.html
toolkit/components/passwordmgr/test/mochitest/test_basic_form_autocomplete.html
toolkit/components/passwordmgr/test/mochitest/test_bug_627616.html
toolkit/components/passwordmgr/test/mochitest/test_form_action_2.html
toolkit/components/passwordmgr/test/mochitest/test_prompt_promptAuth_proxy.html
toolkit/components/passwordmgr/test/prompt_common.js
toolkit/components/passwordmgr/test/test_prompt_async.html
toolkit/components/passwordmgr/test/unit/head.js
toolkit/components/passwordmgr/test/unit/test_OSCrypto_win.js
toolkit/components/passwordmgr/test/unit/test_disabled_hosts.js
toolkit/components/passwordmgr/test/unit/test_getFormFields.js
toolkit/components/passwordmgr/test/unit/test_legacy_empty_formSubmitURL.js
toolkit/components/passwordmgr/test/unit/test_legacy_validation.js
toolkit/components/passwordmgr/test/unit/test_logins_change.js
toolkit/components/passwordmgr/test/unit/test_logins_decrypt_failure.js
toolkit/components/passwordmgr/test/unit/test_logins_metainfo.js
toolkit/components/passwordmgr/test/unit/test_logins_search.js
toolkit/components/passwordmgr/test/unit/test_module_LoginImport.js
toolkit/components/passwordmgr/test/unit/test_module_LoginStore.js
toolkit/components/passwordmgr/test/unit/test_storage.js
toolkit/components/passwordmgr/test/unit/test_telemetry.js
toolkit/components/perfmonitoring/PerformanceStats.jsm
toolkit/components/perfmonitoring/PerformanceWatcher.jsm
toolkit/components/places/Bookmarks.jsm
toolkit/components/places/History.jsm
toolkit/components/places/PlacesCategoriesStarter.js
toolkit/components/places/PlacesDBUtils.jsm
toolkit/components/places/PlacesTransactions.jsm
toolkit/components/places/PlacesUtils.jsm
toolkit/components/places/UnifiedComplete.js
toolkit/components/places/nsLivemarkService.js
toolkit/components/places/nsPlacesExpiration.js
toolkit/components/places/nsTaggingService.js
toolkit/components/places/tests/bookmarks/test_savedsearches.js
toolkit/components/places/tests/browser/browser_bug680727.js
toolkit/components/places/tests/browser/browser_colorAnalyzer.js
toolkit/components/places/tests/browser/browser_favicon_setAndFetchFaviconForPage_failures.js
toolkit/components/places/tests/expiration/test_analyze_runs.js
toolkit/components/places/tests/favicons/test_favicons_conversions.js
toolkit/components/places/tests/favicons/test_getFaviconDataForPage.js
toolkit/components/places/tests/favicons/test_getFaviconURLForPage.js
toolkit/components/places/tests/favicons/test_moz-anno_favicon_mime_type.js
toolkit/components/places/tests/history/test_remove.js
toolkit/components/places/tests/network/test_history_redirects.js
toolkit/components/places/tests/queries/head_queries.js
toolkit/components/places/tests/queries/test_abstime-annotation-domain.js
toolkit/components/places/tests/queries/test_abstime-annotation-uri.js
toolkit/components/places/tests/queries/test_containersQueries_sorting.js
toolkit/components/places/tests/queries/test_onlyBookmarked.js
toolkit/components/places/tests/queries/test_querySerialization.js
toolkit/components/places/tests/queries/test_redirects.js
toolkit/components/places/tests/queries/test_sorting.js
toolkit/components/places/tests/queries/test_tags.js
toolkit/components/places/tests/queries/test_transitions.js
toolkit/components/places/tests/unifiedcomplete/head_autocomplete.js
toolkit/components/places/tests/unit/nsDummyObserver.js
toolkit/components/places/tests/unit/test_000_frecency.js
toolkit/components/places/tests/unit/test_405497.js
toolkit/components/places/tests/unit/test_412132.js
toolkit/components/places/tests/unit/test_async_history_api.js
toolkit/components/places/tests/unit/test_autocomplete_stopSearch_no_throw.js
toolkit/components/places/tests/unit/test_bookmarks_json.js
toolkit/components/places/tests/unit/test_bookmarks_restore_notification.js
toolkit/components/places/tests/unit/test_history.js
toolkit/components/places/tests/unit/test_history_observer.js
toolkit/components/places/tests/unit/test_placesTxn.js
toolkit/components/places/tests/unit/test_preventive_maintenance.js
toolkit/components/places/tests/unit/test_sql_guid_functions.js
toolkit/components/places/tests/unit/test_telemetry.js
toolkit/components/places/tests/unit/test_utils_setAnnotationsFor.js
toolkit/components/printing/content/printPageSetup.js
toolkit/components/printing/content/printPreviewProgress.js
toolkit/components/printing/content/printProgress.js
toolkit/components/printing/content/printUtils.js
toolkit/components/printing/content/printdialog.js
toolkit/components/printing/content/printjoboptions.js
toolkit/components/prompts/test/chromeScript.js
toolkit/components/reader/AboutReader.jsm
toolkit/components/satchel/nsFormAutoCompleteResult.jsm
toolkit/components/satchel/nsFormHistory.js
toolkit/components/satchel/test/test_form_autocomplete_with_list.html
toolkit/components/sqlite/sqlite_internal.js
toolkit/components/startup/tests/browser/browser_bug537449.js
toolkit/components/telemetry/TelemetryEnvironment.jsm
toolkit/components/telemetry/TelemetryStorage.jsm
toolkit/components/telemetry/tests/unit/test_TelemetryEnvironment.js
toolkit/components/terminator/nsTerminatorTelemetry.js
toolkit/components/thumbnails/PageThumbUtils.jsm
toolkit/components/thumbnails/PageThumbs.jsm
toolkit/components/urlformatter/tests/unit/test_urlformatter.js
toolkit/components/xulstore/XULStore.js
toolkit/content/browser-content.js
toolkit/content/contentAreaUtils.js
toolkit/content/customizeToolbar.js
toolkit/content/finddialog.js
toolkit/content/tests/browser/browser_content_url_annotation.js
toolkit/content/tests/chrome/file_autocomplete_with_composition.js
toolkit/content/tests/fennec-tile-testapp/chrome/content/BrowserView.js
toolkit/content/tests/fennec-tile-testapp/chrome/content/FooScript.js
toolkit/content/tests/fennec-tile-testapp/chrome/content/TileManager.js
toolkit/content/tests/fennec-tile-testapp/chrome/content/WidgetStack.js
toolkit/content/tests/widgets/test_mousecapture_area.html
toolkit/content/widgets/autocomplete.xml
toolkit/content/widgets/dialog.xml
toolkit/content/widgets/menulist.xml
toolkit/content/widgets/popup.xml
toolkit/content/widgets/videocontrols.xml
toolkit/crashreporter/CrashSubmit.jsm
toolkit/forgetaboutsite/test/unit/test_removeDataFromDomain.js
toolkit/modules/BrowserUtils.jsm
toolkit/modules/DeferredTask.jsm
toolkit/modules/FinderHighlighter.jsm
toolkit/modules/JSONFile.jsm
toolkit/modules/PopupNotifications.jsm
toolkit/modules/Promise-backend.js
toolkit/modules/SpatialNavigation.jsm
toolkit/modules/Task.jsm
toolkit/modules/secondscreen/RokuApp.jsm
toolkit/modules/tests/browser/browser_PromiseMessage.js
toolkit/modules/tests/xpcshell/test_DeferredTask.js
toolkit/modules/tests/xpcshell/test_JSONFile.js
toolkit/modules/tests/xpcshell/test_NewTabUtils.js
toolkit/modules/tests/xpcshell/test_Promise.js
toolkit/modules/tests/xpcshell/test_PromiseUtils.js
toolkit/modules/tests/xpcshell/test_Services.js
toolkit/modules/tests/xpcshell/test_web_channel_broker.js
toolkit/mozapps/downloads/DownloadTaskbarProgress.jsm
toolkit/mozapps/downloads/content/DownloadProgressListener.js
toolkit/mozapps/downloads/content/downloads.js
toolkit/mozapps/downloads/content/helperApps.js
toolkit/mozapps/extensions/DeferredSave.jsm
toolkit/mozapps/extensions/LightweightThemeManager.jsm
toolkit/mozapps/extensions/addonManager.js
toolkit/mozapps/extensions/content/extensions.js
toolkit/mozapps/extensions/content/extensions.xml
toolkit/mozapps/extensions/content/update.js
toolkit/mozapps/extensions/internal/AddonRepository.jsm
toolkit/mozapps/extensions/internal/AddonRepository_SQLiteMigrator.jsm
toolkit/mozapps/extensions/internal/Content.js
toolkit/mozapps/extensions/internal/GMPProvider.jsm
toolkit/mozapps/extensions/internal/PluginProvider.jsm
toolkit/mozapps/extensions/internal/ProductAddonChecker.jsm
toolkit/mozapps/extensions/internal/XPIProvider.jsm
toolkit/mozapps/extensions/internal/XPIProviderUtils.js
toolkit/mozapps/extensions/nsBlocklistService.js
toolkit/mozapps/extensions/test/browser/discovery_install.html
toolkit/mozapps/extensions/test/browser/head.js
toolkit/mozapps/extensions/test/mochitest/test_bug887098.html
toolkit/mozapps/extensions/test/xpcshell/head_unpack.js
toolkit/mozapps/extensions/test/xpcshell/test_blocklist_metadata_filters.js
toolkit/mozapps/extensions/test/xpcshell/test_blocklist_prefs.js
toolkit/mozapps/extensions/test/xpcshell/test_blocklist_regexp.js
toolkit/mozapps/extensions/test/xpcshell/test_blocklistchange.js
toolkit/mozapps/extensions/test/xpcshell/test_bug393285.js
toolkit/mozapps/extensions/test/xpcshell/test_bug406118.js
toolkit/mozapps/extensions/test/xpcshell/test_bug455906.js
toolkit/mozapps/extensions/test/xpcshell/test_bug514327_2.js
toolkit/mozapps/extensions/test/xpcshell/test_bug655254.js
toolkit/mozapps/extensions/test/xpcshell/test_delay_update_webextension.js
toolkit/mozapps/extensions/test/xpcshell/test_fuel.js
toolkit/mozapps/extensions/test/xpcshell/test_install.js
toolkit/mozapps/extensions/test/xpcshell/test_no_addons.js
toolkit/mozapps/extensions/test/xpcshell/test_softblocked.js
toolkit/mozapps/extensions/test/xpcshell/test_undothemeuninstall.js
toolkit/mozapps/extensions/test/xpcshell/test_undouninstall.js
toolkit/mozapps/extensions/test/xpinstall/browser_auth3.js
toolkit/mozapps/extensions/test/xpinstall/browser_auth4.js
toolkit/mozapps/extensions/test/xpinstall/browser_concurrent_installs.js
toolkit/mozapps/extensions/test/xpinstall/browser_localfile.js
toolkit/mozapps/extensions/test/xpinstall/browser_localfile2.js
toolkit/mozapps/extensions/test/xpinstall/browser_localfile3.js
toolkit/mozapps/extensions/test/xpinstall/browser_localfile4.js
toolkit/mozapps/extensions/test/xpinstall/bug645699.html
toolkit/mozapps/extensions/test/xpinstall/concurrent_installs.html
toolkit/mozapps/extensions/test/xpinstall/enabled.html
toolkit/mozapps/extensions/test/xpinstall/installchrome.html
toolkit/mozapps/extensions/test/xpinstall/installtrigger.html
toolkit/mozapps/extensions/test/xpinstall/startsoftwareupdate.html
toolkit/mozapps/extensions/test/xpinstall/triggerredirect.html
toolkit/mozapps/handling/content/dialog.js
toolkit/mozapps/handling/nsContentDispatchChooser.js
toolkit/mozapps/preferences/changemp.js
toolkit/mozapps/update/nsUpdateService.js
toolkit/mozapps/update/tests/data/xpcshellUtilsAUS.js
toolkit/mozapps/update/tests/unit_aus_update/remoteUpdateXML.js
--- a/browser/base/content/aboutaccounts/aboutaccounts.js
+++ b/browser/base/content/aboutaccounts/aboutaccounts.js
@@ -21,17 +21,17 @@ const PREF_SYNC_SHOW_CUSTOMIZATION = "se
 const ACTION_URL_PARAM = "action";
 
 const OBSERVER_TOPICS = [
   fxAccountsCommon.ONVERIFIED_NOTIFICATION,
   fxAccountsCommon.ONLOGOUT_NOTIFICATION,
 ];
 
 function log(msg) {
-  //dump("FXA: " + msg + "\n");
+  // dump("FXA: " + msg + "\n");
 }
 
 function error(msg) {
   console.log("Firefox Account Error: " + msg + "\n");
 }
 
 function getPreviousAccountNameHash() {
   try {
--- a/browser/base/content/browser-addons.js
+++ b/browser/base/content/browser-addons.js
@@ -650,17 +650,17 @@ var LightWeightThemeWebInstaller = {
   },
 
   _isAllowed: function (srcURIString) {
     let uri;
     try {
       uri = makeURI(srcURIString);
     }
     catch (e) {
-      //makeURI fails if srcURIString is a nonsense URI
+      // makeURI fails if srcURIString is a nonsense URI
       return false;
     }
 
     if (!uri.schemeIs("https")) {
       return false;
     }
 
     let pm = Services.perms;
--- a/browser/base/content/browser-fullZoom.js
+++ b/browser/base/content/browser-fullZoom.js
@@ -23,26 +23,26 @@ var FullZoom = {
   // Stores initial locations if we receive onLocationChange
   // events before we're initialized.
   _initialLocations: new WeakMap(),
 
   get siteSpecific() {
     return this._siteSpecificPref;
   },
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // nsISupports
 
   QueryInterface: XPCOMUtils.generateQI([Ci.nsIDOMEventListener,
                                          Ci.nsIObserver,
                                          Ci.nsIContentPrefObserver,
                                          Ci.nsISupportsWeakReference,
                                          Ci.nsISupports]),
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Initialization & Destruction
 
   init: function FullZoom_init() {
     gBrowser.addEventListener("ZoomChangeUsingMouseWheel", this);
 
     // Register ourselves with the service so we know when our pref changes.
     this._cps2 = Cc["@mozilla.org/content-pref/service;1"].
                  getService(Ci.nsIContentPrefService2);
@@ -70,17 +70,17 @@ var FullZoom = {
 
   destroy: function FullZoom_destroy() {
     gPrefService.removeObserver("browser.zoom.", this);
     this._cps2.removeObserverForName(this.name, this);
     gBrowser.removeEventListener("ZoomChangeUsingMouseWheel", this);
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Event Handlers
 
   // nsIDOMEventListener
 
   handleEvent: function FullZoom_handleEvent(event) {
     switch (event.type) {
       case "ZoomChangeUsingMouseWheel":
         let browser = this._getTargetedBrowser(event);
@@ -241,17 +241,17 @@ var FullZoom = {
   // update state of zoom type menu item
 
   updateMenu: function FullZoom_updateMenu() {
     var menuItem = document.getElementById("toggle_zoom");
 
     menuItem.setAttribute("checked", !ZoomManager.useFullZoom);
   },
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Setting & Pref Manipulation
 
   /**
    * Reduces the zoom level of the page in the current browser.
    */
   reduce: function FullZoom_reduce() {
     ZoomManager.reduce();
     let browser = gBrowser.selectedBrowser;
@@ -386,17 +386,17 @@ var FullZoom = {
     let ctxt = this._loadContextFromBrowser(browser);
     this._cps2.removeByDomainAndName(browser.currentURI.spec, this.name, ctxt, {
       handleCompletion: function () {
         this._isNextContentPrefChangeInternal = true;
       }.bind(this),
     });
   },
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Utilities
 
   /**
    * Returns the zoom change token of the given browser.  Asynchronous
    * operations that access the given browser's zoom should use this method to
    * capture the token before starting and use token.isCurrent to determine if
    * it's safe to access the zoom when done.  If token.isCurrent is false, then
    * after the async operation started, either the browser's zoom was changed or
--- a/browser/base/content/browser-places.js
+++ b/browser/base/content/browser-places.js
@@ -1,14 +1,14 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
-////////////////////////////////////////////////////////////////////////////////
-//// StarUI
+// //////////////////////////////////////////////////////////////////////////////
+// // StarUI
 
 var StarUI = {
   _itemId: -1,
   uri: null,
   _batching: false,
   _isNewBookmark: false,
   _autoCloseTimer: 0,
 
@@ -117,17 +117,17 @@ var StarUI = {
         switch (aEvent.keyCode) {
           case KeyEvent.DOM_VK_ESCAPE:
             this.panel.hidePopup();
             break;
           case KeyEvent.DOM_VK_RETURN:
             if (aEvent.target.classList.contains("expander-up") ||
                 aEvent.target.classList.contains("expander-down") ||
                 aEvent.target.id == "editBMPanel_newFolderButton")  {
-              //XXX Why is this necessary? The defaultPrevented check should
+              // XXX Why is this necessary? The defaultPrevented check should
               //    be enough.
               break;
             }
             this.panel.hidePopup();
             break;
           // This case is for catching character-generating keypresses
           case 0:
             let accessKey = document.getElementById("key_close");
@@ -340,18 +340,18 @@ var StarUI = {
     }
     else {
       PlacesUtils.transactionManager.endBatch(false);
     }
     this._batching = false;
   }
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// PlacesCommandHook
+// //////////////////////////////////////////////////////////////////////////////
+// // PlacesCommandHook
 
 var PlacesCommandHook = {
   /**
    * Adds a bookmark to the page loaded in the given browser.
    *
    * @param aBrowser
    *        a <browser> element.
    * @param [optional] aParent
@@ -667,18 +667,18 @@ var PlacesCommandHook = {
     }
     else {
       organizer.PlacesOrganizer.selectLeftPaneContainerByHierarchy(aLeftPaneRoot);
       organizer.focus();
     }
   }
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// HistoryMenu
+// //////////////////////////////////////////////////////////////////////////////
+// // HistoryMenu
 
 XPCOMUtils.defineLazyModuleGetter(this, "RecentlyClosedTabsAndWindowsMenuUtils",
   "resource:///modules/sessionstore/RecentlyClosedTabsAndWindowsMenuUtils.jsm");
 
 // View for the history menu.
 function HistoryMenu(aPopupShowingEvent) {
   // Workaround for Bug 610187.  The sidebar does not include all the Places
   // views definitions, and we don't need them there.
@@ -806,18 +806,18 @@ HistoryMenu.prototype = {
     if (placesNode) {
       if (!PrivateBrowsingUtils.isWindowPrivate(window))
         PlacesUIUtils.markPageAsTyped(placesNode.uri);
       openUILink(placesNode.uri, aEvent, { ignoreAlt: true });
     }
   }
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// BookmarksEventHandler
+// //////////////////////////////////////////////////////////////////////////////
+// // BookmarksEventHandler
 
 /**
  * Functions for handling events in the Bookmarks Toolbar and menu.
  */
 var BookmarksEventHandler = {
   /**
    * Handler for click event for an item in the bookmarks toolbar or menu.
    * Menus and submenus from the folder buttons bubble up to this handler.
@@ -935,18 +935,18 @@ var BookmarksEventHandler = {
     if (!tooltipUrl.hidden)
       tooltipUrl.value = url;
 
     // Show tooltip.
     return true;
   }
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// PlacesMenuDNDHandler
+// //////////////////////////////////////////////////////////////////////////////
+// // PlacesMenuDNDHandler
 
 // Handles special drag and drop functionality for Places menus that are not
 // part of a Places view (e.g. the bookmarks menu in the menubar).
 var PlacesMenuDNDHandler = {
   _springLoadDelayMs: 350,
   _closeDelayMs: 500,
   _loadTimer: null,
   _closeTimer: null,
@@ -1066,18 +1066,18 @@ var PlacesMenuDNDHandler = {
                                 PlacesUtils.bookmarks.DEFAULT_INDEX,
                                 Components.interfaces.nsITreeView.DROP_ON);
     PlacesControllerDragHelper.onDrop(ip, event.dataTransfer);
     PlacesControllerDragHelper.currentDropTarget = null;
     event.stopPropagation();
   }
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// PlacesToolbarHelper
+// //////////////////////////////////////////////////////////////////////////////
+// // PlacesToolbarHelper
 
 /**
  * This object handles the initialization and uninitialization of the bookmarks
  * toolbar.
  */
 var PlacesToolbarHelper = {
   _place: "place:folder=TOOLBAR",
 
@@ -1213,18 +1213,18 @@ var PlacesToolbarHelper = {
       if (this._viewElt._placesView) {
         this._viewElt._placesView.uninit();
       }
       this.init(true);
     }
   },
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// BookmarkingUI
+// //////////////////////////////////////////////////////////////////////////////
+// // BookmarkingUI
 
 /**
  * Handles the bookmarks menu-button in the toolbar.
  */
 
 var BookmarkingUI = {
   BOOKMARK_BUTTON_ID: "bookmarks-menu-button",
   BOOKMARK_BUTTON_SHORTCUT: "addBookmarkAsKb",
--- a/browser/base/content/browser-syncui.js
+++ b/browser/base/content/browser-syncui.js
@@ -525,17 +525,17 @@ var gSyncUI = {
 
   QueryInterface: XPCOMUtils.generateQI([
     Ci.nsIObserver,
     Ci.nsISupportsWeakReference
   ])
 };
 
 XPCOMUtils.defineLazyGetter(gSyncUI, "_stringBundle", function() {
-  //XXXzpao these strings should probably be moved from /services to /browser... (bug 583381)
+  // XXXzpao these strings should probably be moved from /services to /browser... (bug 583381)
   //        but for now just make it work
   return Cc["@mozilla.org/intl/stringbundle;1"].
          getService(Ci.nsIStringBundleService).
          createBundle("chrome://weave/locale/services/sync.properties");
 });
 
 XPCOMUtils.defineLazyGetter(gSyncUI, "log", function() {
   return Log.repository.getLogger("browserwindow.syncui");
--- a/browser/base/content/browser.js
+++ b/browser/base/content/browser.js
@@ -166,17 +166,17 @@ var gMultiProcessBrowser =
 var gAppInfo = Cc["@mozilla.org/xre/app-info;1"]
                   .getService(Ci.nsIXULAppInfo)
                   .QueryInterface(Ci.nsIXULRuntime);
 
 if (AppConstants.platform != "macosx") {
   var gEditUIVisible = true;
 }
 
-/*globals gBrowser, gNavToolbox, gURLBar, gNavigatorBundle*/
+/* globals gBrowser, gNavToolbox, gURLBar, gNavigatorBundle*/
 [
   ["gBrowser",            "content"],
   ["gNavToolbox",         "navigator-toolbox"],
   ["gURLBar",             "urlbar"],
   ["gNavigatorBundle",    "bundle_browser"]
 ].forEach(function (elementGlobal) {
   var [name, id] = elementGlobal;
   window.__defineGetter__(name, function () {
@@ -3991,17 +3991,17 @@ function OpenBrowserWindow(options)
   // set, then extract the current charset menu setting from the current document and use it to
   // initialize the new browser window...
   var win;
   if (window && (wintype == "navigator:browser") && window.content && window.content.document)
   {
     var DocCharset = window.content.document.characterSet;
     charsetArg = "charset="+DocCharset;
 
-    //we should "inherit" the charset menu setting in a new window
+    // we should "inherit" the charset menu setting in a new window
     win = window.openDialog("chrome://browser/content/", "_blank", "chrome,all,dialog=no" + extraFeatures, defaultArgs, charsetArg);
   }
   else // forget about the charset information.
   {
     win = window.openDialog("chrome://browser/content/", "_blank", "chrome,all,dialog=no" + extraFeatures, defaultArgs);
   }
 
   return win;
@@ -5852,17 +5852,17 @@ var LanguageDetectionListener = {
     });
   }
 };
 
 
 var BrowserOffline = {
   _inited: false,
 
-  /////////////////////////////////////////////////////////////////////////////
+  // ///////////////////////////////////////////////////////////////////////////
   // BrowserOffline Public Methods
   init: function ()
   {
     if (!this._uiElement)
       this._uiElement = document.getElementById("workOfflineMenuitemState");
 
     Services.obs.addObserver(this, "network:offline-status-changed", false);
 
@@ -5885,29 +5885,29 @@ var BrowserOffline = {
     if (!ioService.offline && !this._canGoOffline()) {
       this._updateOfflineUI(false);
       return;
     }
 
     ioService.offline = !ioService.offline;
   },
 
-  /////////////////////////////////////////////////////////////////////////////
+  // ///////////////////////////////////////////////////////////////////////////
   // nsIObserver
   observe: function (aSubject, aTopic, aState)
   {
     if (aTopic != "network:offline-status-changed")
       return;
 
     // This notification is also received because of a loss in connectivity,
     // which we ignore by updating the UI to the current value of io.offline
     this._updateOfflineUI(Services.io.offline);
   },
 
-  /////////////////////////////////////////////////////////////////////////////
+  // ///////////////////////////////////////////////////////////////////////////
   // BrowserOffline Implementation Methods
   _canGoOffline: function ()
   {
     try {
       var cancelGoOffline = Cc["@mozilla.org/supports-PRBool;1"].createInstance(Ci.nsISupportsPRBool);
       Services.obs.notifyObservers(cancelGoOffline, "offline-requested", null);
 
       // Something aborted the quit process.
@@ -7643,17 +7643,17 @@ function switchToTabHavingURI(aURI, aOpe
     // are private and they are not in permanent private browsing mode
     if (!kPrivateBrowsingWhitelist.has(aURI.spec) &&
         (PrivateBrowsingUtils.isWindowPrivate(window) ||
          PrivateBrowsingUtils.isWindowPrivate(aWindow)) &&
         !PrivateBrowsingUtils.permanentPrivateBrowsing) {
       return false;
     }
 
-    //Remove the query string, fragment, both, or neither from a given url.
+    // Remove the query string, fragment, both, or neither from a given url.
     function cleanURL(url, removeQuery, removeFragment) {
       let ret = url;
       if (removeFragment) {
         ret = ret.split("#")[0];
         if (removeQuery) {
           // This removes a query, if present before the fragment.
           ret = ret.split("?")[0];
         }
--- a/browser/base/content/content.js
+++ b/browser/base/content/content.js
@@ -1298,17 +1298,17 @@ var PageInfoListener = {
       result.SVGImageElementHeight = item.height.baseVal.value;
     }
 
     result.baseURI = item.baseURI;
 
     return result;
   },
 
-  //******** Other Misc Stuff
+  //* ******* Other Misc Stuff
   // Modified from the Links Panel v2.3, http://segment7.net/mozilla/links/links.html
   // parse a node to extract the contents of the node
   getValueText: function(node)
   {
 
     let valueText = "";
 
     // Form input elements don't generally contain information that is useful to our callers, so return nothing.
--- a/browser/base/content/pageinfo/pageInfo.js
+++ b/browser/base/content/pageinfo/pageInfo.js
@@ -1,16 +1,16 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
  * You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 Components.utils.import("resource://gre/modules/LoadContextInfo.jsm");
 Components.utils.import("resource://gre/modules/Services.jsm");
 
-//******** define a js object to implement nsITreeView
+//* ******* define a js object to implement nsITreeView
 function pageInfoTreeView(treeid, copycol)
 {
   // copycol is the index number for the column that we want to add to
   // the copy-n-paste buffer when the user hits accel-c
   this.treeid = treeid;
   this.copycol = copycol;
   this.rows = 0;
   this.tree = null;
@@ -631,17 +631,17 @@ function addImage(imageViewRow)
         gImageElement.width == elem.width &&
         gImageElement.height == elem.height &&
         gImageElement.imageText == elem.imageText) {
       gImageView.data[i][COL_IMAGE_NODE] = elem;
     }
   }
 }
 
-//******** Link Stuff
+//* ******* Link Stuff
 function openURL(target)
 {
   var url = target.parentNode.childNodes[2].value;
   window.open(url, "_blank", "chrome");
 }
 
 function onBeginLinkDrag(event, urlField, descField)
 {
@@ -663,17 +663,17 @@ function onBeginLinkDrag(event, urlField
   var desc = tree.view.getCellText(row, col);
 
   var dt = event.dataTransfer;
   dt.setData("text/x-moz-url", url + "\n" + desc);
   dt.setData("text/url-list", url);
   dt.setData("text/plain", url);
 }
 
-//******** Image Stuff
+//* ******* Image Stuff
 function getSelectedRows(tree)
 {
   var start = { };
   var end   = { };
   var numRanges = tree.view.selection.getRangeCount();
 
   var rowArray = [ ];
   for (var t = 0; t < numRanges; t++) {
--- a/browser/base/content/sanitize.js
+++ b/browser/base/content/sanitize.js
@@ -285,17 +285,17 @@ Sanitizer.prototype = {
         // For this reason, instead of waiting for sanitization to always
         // complete, we introduce a soft timeout. Once this timeout has
         // elapsed, we proceed with the shutdown of Firefox.
         let promiseClearPluginCookies;
         try {
           // We don't want to wait for this operation to complete...
           promiseClearPluginCookies = this.promiseClearPluginCookies(range);
 
-          //... at least, not for more than 10 seconds.
+          // ... at least, not for more than 10 seconds.
           yield Promise.race([
             promiseClearPluginCookies,
             new Promise(resolve => setTimeout(resolve, 10000 /* 10 seconds */))
           ]);
         } catch (ex) {
           seenException = ex;
         }
 
--- a/browser/base/content/sync/aboutSyncTabs.js
+++ b/browser/base/content/sync/aboutSyncTabs.js
@@ -168,17 +168,17 @@ var RemoteTabViewer = {
     this._buildListRequested = false;
 
     this._clearTabList();
 
     if (Weave.Service.isLoggedIn) {
       this._refetchTabs(forceSync);
       this._generateWeaveTabList();
     } else {
-      //XXXzpao We should say something about not being logged in & not having data
+      // XXXzpao We should say something about not being logged in & not having data
       //        or tell the appropriate condition. (bug 583344)
     }
 
     let complete = () => {
       this._waitingForBuildList = false;
       if (this._buildListRequested) {
         CommonUtils.nextTick(this.buildList, this);
       }
--- a/browser/base/content/sync/setup.js
+++ b/browser/base/content/sync/setup.js
@@ -67,17 +67,17 @@ var gSyncSetup = {
       ["weave:service:login:start",       "onLoginStart"],
       ["weave:service:login:error",       "onLoginEnd"],
       ["weave:service:login:finish",      "onLoginEnd"]];
 
     // Add the observers now and remove them on unload
     let self = this;
     let addRem = function(add) {
       obs.forEach(function([topic, func]) {
-        //XXXzpao This should use Services.obs.* but Weave's Obs does nice handling
+        // XXXzpao This should use Services.obs.* but Weave's Obs does nice handling
         //        of `this`. Fix in a followup. (bug 583347)
         if (add)
           Weave.Svc.Obs.add(topic, self[func], self);
         else
           Weave.Svc.Obs.remove(topic, self[func], self);
       });
     };
     addRem(true);
@@ -1023,17 +1023,17 @@ var gSyncSetup = {
     if ((stateFlags & Ci.nsIWebProgressListener.STATE_IS_NETWORK) == 0)
       return;
     if ((stateFlags & Ci.nsIWebProgressListener.STATE_IS_WINDOW) == 0)
       return;
 
     // If we didn't find a captcha, assume it's not needed and don't show it.
     let responseStatus = request.QueryInterface(Ci.nsIHttpChannel).responseStatus;
     setVisibility(this.captchaBrowser, responseStatus != 404);
-    //XXX TODO we should really log any responseStatus other than 200
+    // XXX TODO we should really log any responseStatus other than 200
   },
   onProgressChange: function() {},
   onStatusChange: function() {},
   onSecurityChange: function() {},
   onLocationChange: function () {}
 };
 
 // Define lazy getters for various XUL elements.
--- a/browser/base/content/test/general/browser_aboutAccounts.js
+++ b/browser/base/content/test/general/browser_aboutAccounts.js
@@ -1,13 +1,13 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/
  */
 
-///////////////////
+// /////////////////
 //
 // Whitelisting this test.
 // As part of bug 1077403, the leaking uncaught rejection should be fixed.
 //
 thisTestLeaksUncaughtRejectionsAndShouldBeFixed("TypeError: window.location is null");
 
 XPCOMUtils.defineLazyModuleGetter(this, "Promise",
   "resource://gre/modules/Promise.jsm");
--- a/browser/base/content/test/general/browser_aboutSupport_newtab_security_state.js
+++ b/browser/base/content/test/general/browser_aboutSupport_newtab_security_state.js
@@ -1,12 +1,12 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
-///////////////////
+// /////////////////
 //
 // Whitelisting this test.
 // As part of bug 1077403, the leaking uncaught rejection should be fixed.
 //
 thisTestLeaksUncaughtRejectionsAndShouldBeFixed("TypeError: window.location is null");
 
 
 add_task(function* checkIdentityOfAboutSupport() {
--- a/browser/base/content/test/general/browser_bug416661.js
+++ b/browser/base/content/test/general/browser_bug416661.js
@@ -1,15 +1,15 @@
 var tabElm, zoomLevel;
 function start_test_prefNotSet() {
   Task.spawn(function* () {
     is(ZoomManager.zoom, 1, "initial zoom level should be 1");
     FullZoom.enlarge();
 
-    //capture the zoom level to test later
+    // capture the zoom level to test later
     zoomLevel = ZoomManager.zoom;
     isnot(zoomLevel, 1, "zoom level should have changed");
 
     yield FullZoomHelper.load(gBrowser.selectedTab, "http://mochi.test:8888/browser/browser/base/content/test/general/moz.png");
   }).then(continue_test_prefNotSet, FullZoomHelper.failAndContinue(finish));
 }
 
 function continue_test_prefNotSet () {
--- a/browser/base/content/test/general/browser_bug767836_perwindowpb.js
+++ b/browser/base/content/test/general/browser_bug767836_perwindowpb.js
@@ -2,17 +2,17 @@
  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
  * You can obtain one at http://mozilla.org/MPL/2.0/. */
 "use strict";
 /* globals waitForExplicitFinish, executeSoon, finish, whenNewWindowLoaded, ok */
 /* globals is */
 /* exported test */
 
 function test() {
-  //initialization
+  // initialization
   waitForExplicitFinish();
 
   let aboutNewTabService = Components.classes["@mozilla.org/browser/aboutnewtab-service;1"]
                                      .getService(Components.interfaces.nsIAboutNewTabService);
   let newTabURL;
   let testURL = "http://example.com/";
   let defaultURL = aboutNewTabService.newTabURL;
   let mode;
--- a/browser/base/content/test/general/browser_bug822367.js
+++ b/browser/base/content/test/general/browser_bug822367.js
@@ -55,17 +55,17 @@ function MixedTest1B() {
   waitForCondition(() => content.document.getElementById('p1').innerHTML == "hello", MixedTest1C, "Waited too long for mixed script to run in Test 1");
 }
 function MixedTest1C() {
   ok(content.document.getElementById('p1').innerHTML == "hello", "Mixed script didn't load in Test 1");
   gTestBrowser.removeEventListener("load", MixedTest1B, true);
   MixedTest2();
 }
 
-//Mixed Display Test - Doorhanger should not appear
+// Mixed Display Test - Doorhanger should not appear
 function MixedTest2() {
   gTestBrowser.addEventListener("load", MixedTest2A, true);
   var url = gHttpTestRoot2 + "file_bug822367_2.html";
   gTestBrowser.contentWindow.location = url;
 }
 
 function MixedTest2A() {
   assertMixedContentBlockingState(gTestBrowser, {activeLoaded: false, activeBlocked: false, passiveLoaded: false});
--- a/browser/base/content/test/general/browser_bug902156.js
+++ b/browser/base/content/test/general/browser_bug902156.js
@@ -37,17 +37,17 @@ registerCleanupFunction(function() {
 });
 
 function cleanUpAfterTests() {
   gBrowser.removeCurrentTab();
   window.focus();
   finish();
 }
 
-//------------------------ Test 1 ------------------------------
+// ------------------------ Test 1 ------------------------------
 
 function test1A() {
   BrowserTestUtils.browserLoaded(gTestBrowser).then(test1B);
 
   assertMixedContentBlockingState(gTestBrowser, {activeLoaded: false, activeBlocked: true, passiveLoaded: false});
 
   // Disable Mixed Content Protection for the page (and reload)
   let {gIdentityHandler} = gTestBrowser.ownerGlobal;
@@ -80,17 +80,17 @@ function test1D() {
 
   var actual = content.document.getElementById('mctestdiv').innerHTML;
   is(actual, "Mixed Content Blocker disabled", "OK: Executed mixed script in Test 1D");
 
   // move on to Test 2
   test2();
 }
 
-//------------------------ Test 2 ------------------------------
+// ------------------------ Test 2 ------------------------------
 
 function test2() {
   BrowserTestUtils.browserLoaded(gTestBrowser).then(test2A);
   var url = gHttpTestRoot2 + "file_bug902156_2.html";
   gTestBrowser.loadURI(url);
 }
 
 function test2A() {
@@ -130,32 +130,32 @@ function test2D() {
 
   var actual = content.document.getElementById('mctestdiv').innerHTML;
   is(actual, "Mixed Content Blocker disabled", "OK: Executed mixed script in Test 2D");
 
   // move on to Test 3
   test3();
 }
 
-//------------------------ Test 3 ------------------------------
+// ------------------------ Test 3 ------------------------------
 
 function test3() {
   BrowserTestUtils.browserLoaded(gTestBrowser).then(test3A);
   var url = gHttpTestRoot1 + "file_bug902156_3.html";
   gTestBrowser.loadURI(url);
 }
 
 function test3A() {
   assertMixedContentBlockingState(gTestBrowser, {activeLoaded: false, activeBlocked: true, passiveLoaded: false});
 
   // We are done with tests, clean up
   cleanUpAfterTests();
 }
 
-//------------------------------------------------------
+// ------------------------------------------------------
 
 function test() {
   // Performing async calls, e.g. 'onload', we have to wait till all of them finished
   waitForExplicitFinish();
 
   // Store original preferences so we can restore settings after testing
   origBlockActive = Services.prefs.getBoolPref(PREF_ACTIVE);
 
--- a/browser/base/content/test/general/browser_contextmenu.js
+++ b/browser/base/content/test/general/browser_contextmenu.js
@@ -756,17 +756,17 @@ add_task(function* test_select_input_tex
      "context-cut",         true,
      "context-copy",        true,
      "context-paste",       null, // ignore clipboard state
      "context-delete",      true,
      "---",                 null,
      "context-selectall",   true,
      "---",                 null,
      "spell-check-enabled", true,
-     //spell checker is shown on input[type="password"] on this testcase
+     // spell checker is shown on input[type="password"] on this testcase
      "spell-dictionaries",  true,
          ["spell-check-dictionary-en-US", true,
           "---",                          null,
           "spell-add-dictionaries",       true], null
     ].concat(LOGIN_FILL_ITEMS),
     {
       *preCheckContextMenuFn() {
         yield ContentTask.spawn(gBrowser.selectedBrowser, null, function*() {
--- a/browser/base/content/test/general/browser_csp_block_all_mixedcontent.js
+++ b/browser/base/content/test/general/browser_csp_block_all_mixedcontent.js
@@ -4,51 +4,51 @@
  * The page tries to load a script over http. We make sure the UI is not
  * influenced when blocking the mixed content. In particular the page
  * should still appear fully encrypted with a green lock.
  */
 
 const PRE_PATH = "https://example.com/browser/browser/base/content/test/general/";
 var gTestBrowser = null;
 
-//------------------------------------------------------
+// ------------------------------------------------------
 function cleanUpAfterTests() {
   gBrowser.removeCurrentTab();
   window.focus();
   finish();
 }
 
-//------------------------------------------------------
+// ------------------------------------------------------
 function verifyUInotDegraded() {
   // make sure that not mixed content is loaded and also not blocked
   assertMixedContentBlockingState(
     gTestBrowser,
     { activeLoaded: false,
       activeBlocked: false,
       passiveLoaded: false
     }
   );
   // clean up and finish test
   cleanUpAfterTests();
 }
 
-//------------------------------------------------------
+// ------------------------------------------------------
 function runTests() {
   var newTab = gBrowser.addTab();
   gBrowser.selectedTab = newTab;
   gTestBrowser = gBrowser.selectedBrowser;
   newTab.linkedBrowser.stop();
 
   // Starting the test
   BrowserTestUtils.browserLoaded(gTestBrowser).then(verifyUInotDegraded);
   var url = PRE_PATH + "file_csp_block_all_mixedcontent.html";
   gTestBrowser.loadURI(url);
 }
 
-//------------------------------------------------------
+// ------------------------------------------------------
 function test() {
   // Performing async calls, e.g. 'onload', we have to wait till all of them finished
   waitForExplicitFinish();
 
   SpecialPowers.pushPrefEnv(
     { 'set': [["security.mixed_content.block_active_content", true]] },
     function() { runTests(); }
   );
--- a/browser/base/content/test/general/browser_double_close_tab.js
+++ b/browser/base/content/test/general/browser_double_close_tab.js
@@ -34,17 +34,17 @@ function waitForDialogDestroyed(node, ca
     observer = null;
     callback();
   }
 }
 
 add_task(function*() {
   testTab = gBrowser.selectedTab = gBrowser.addTab();
   yield promiseTabLoadEvent(testTab, TEST_PAGE);
-  //XXXgijs the reason this has nesting and callbacks rather than promises is
+  // XXXgijs the reason this has nesting and callbacks rather than promises is
   // that DOM promises resolve on the next tick. So they're scheduled
   // in an event queue. So when we spin a new event queue for a modal dialog...
   // everything gets messed up and the promise's .then callbacks never get
   // called, despite resolve() being called just fine.
   let dialogNode = yield new Promise(resolveOuter => {
     waitForDialog(dialogNode => {
       waitForDialogDestroyed(dialogNode, () => {
         let doCompletion = () => setTimeout(resolveOuter, 0);
--- a/browser/base/content/test/general/browser_fxa_oauth.js
+++ b/browser/base/content/test/general/browser_fxa_oauth.js
@@ -1,13 +1,13 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/
  */
 
-///////////////////
+// /////////////////
 //
 // Whitelisting this test.
 // As part of bug 1077403, the leaking uncaught rejection should be fixed.
 //
 thisTestLeaksUncaughtRejectionsAndShouldBeFixed("TypeError: this.docShell is null");
 
 Cu.import("resource://gre/modules/Promise.jsm");
 Cu.import("resource://gre/modules/Task.jsm");
--- a/browser/base/content/test/general/browser_fxaccounts.js
+++ b/browser/base/content/test/general/browser_fxaccounts.js
@@ -170,17 +170,17 @@ function isFooterVisible() {
 
 function configureProfileURL(profile, responseStatus = 200) {
   let responseBody = profile ? JSON.stringify(profile) : "";
   let url = TEST_ROOT + "fxa_profile_handler.sjs?" +
             "responseStatus=" + responseStatus +
             "responseBody=" + responseBody +
             // This is a bit cheeky - the FxA code will just append "/profile"
             // to the preference value. We arrange for this to be seen by our
-            //.sjs as part of the query string.
+            // .sjs as part of the query string.
             "&path=";
 
   Services.prefs.setCharPref("identity.fxaccounts.remote.profile.uri", url);
 }
 
 function promiseObserver(topic, count = 1) {
   return new Promise(resolve => {
     let obs = (subject, topic, data) => {
--- a/browser/base/content/test/general/browser_gZipOfflineChild.js
+++ b/browser/base/content/test/general/browser_gZipOfflineChild.js
@@ -11,17 +11,17 @@ registerCleanupFunction(function() {
   let principal = Services.scriptSecurityManager.createCodebasePrincipal(uri, {});
   Services.perms.removeFromPrincipal(principal, "offline-app");
   Services.prefs.clearUserPref("offline-apps.allow_by_default");
 });
 
 var cacheCount = 0;
 var intervalID = 0;
 
-////
+// //
 // Handle "message" events which are posted from the iframe upon
 // offline cache events.
 //
 function handleMessageEvents(event) {
   cacheCount++;
   switch (cacheCount) {
     case 1:
       // This is the initial caching off offline data.
--- a/browser/base/content/test/general/browser_mcb_redirect.js
+++ b/browser/base/content/test/general/browser_mcb_redirect.js
@@ -57,17 +57,17 @@ const PREF_ACTIVE = "security.mixed_cont
 const PREF_DISPLAY = "security.mixed_content.block_display_content";
 const gHttpsTestRoot = "https://example.com/browser/browser/base/content/test/general/";
 const gHttpTestRoot = "http://example.com/browser/browser/base/content/test/general/";
 
 var origBlockActive;
 var origBlockDisplay;
 var gTestBrowser = null;
 
-//------------------------ Helper Functions ---------------------
+// ------------------------ Helper Functions ---------------------
 
 registerCleanupFunction(function() {
   // Set preferences back to their original values
   Services.prefs.setBoolPref(PREF_ACTIVE, origBlockActive);
   Services.prefs.setBoolPref(PREF_DISPLAY, origBlockDisplay);
 
   // Make sure we are online again
   Services.io.offline = false;
@@ -92,17 +92,17 @@ function waitForCondition(condition, nex
     }
     tries++;
   }, 500);
   var moveOn = function() {
     clearInterval(interval); nextTest();
   };
 }
 
-//------------------------ Test 1 ------------------------------
+// ------------------------ Test 1 ------------------------------
 
 function test1() {
   gTestBrowser.addEventListener("load", checkUIForTest1, true);
   var url = gHttpsTestRoot + "test_mcb_redirect.html"
   gTestBrowser.contentWindow.location = url;
 }
 
 function checkUIForTest1() {
@@ -112,17 +112,17 @@ function checkUIForTest1() {
 
   var expected = "script blocked";
   waitForCondition(
     () => content.document.getElementById('mctestdiv').innerHTML == expected,
     test2, "Error: Waited too long for status in Test 1!",
     "OK: Expected result in innerHTML for Test1!");
 }
 
-//------------------------ Test 2 ------------------------------
+// ------------------------ Test 2 ------------------------------
 
 function test2() {
   gTestBrowser.addEventListener("load", checkUIForTest2, true);
   var url = gHttpTestRoot + "test_mcb_redirect.html"
   gTestBrowser.contentWindow.location = url;
 }
 
 function checkUIForTest2() {
@@ -132,17 +132,17 @@ function checkUIForTest2() {
 
   var expected = "script executed";
   waitForCondition(
     () => content.document.getElementById('mctestdiv').innerHTML == expected,
     test3, "Error: Waited too long for status in Test 2!",
     "OK: Expected result in innerHTML for Test2!");
 }
 
-//------------------------ Test 3 ------------------------------
+// ------------------------ Test 3 ------------------------------
 // HTTPS page loading insecure image
 function test3() {
   gTestBrowser.addEventListener("load", checkLoadEventForTest3, true);
   var url = gHttpsTestRoot + "test_mcb_redirect_image.html"
   gTestBrowser.contentWindow.location = url;
 }
 
 function checkLoadEventForTest3() {
@@ -150,17 +150,17 @@ function checkLoadEventForTest3() {
 
   var expected = "image blocked"
   waitForCondition(
     () => content.document.getElementById('mctestdiv').innerHTML == expected,
     test4, "Error: Waited too long for status in Test 3!",
     "OK: Expected result in innerHTML for Test3!");
 }
 
-//------------------------ Test 4 ------------------------------
+// ------------------------ Test 4 ------------------------------
 // HTTP page loading insecure image
 function test4() {
   gTestBrowser.addEventListener("load", checkLoadEventForTest4, true);
   var url = gHttpTestRoot + "test_mcb_redirect_image.html"
   gTestBrowser.contentWindow.location = url;
 }
 
 function checkLoadEventForTest4() {
@@ -168,17 +168,17 @@ function checkLoadEventForTest4() {
 
   var expected = "image loaded"
   waitForCondition(
     () => content.document.getElementById('mctestdiv').innerHTML == expected,
     test5, "Error: Waited too long for status in Test 4!",
     "OK: Expected result in innerHTML for Test4!");
 }
 
-//------------------------ Test 5 ------------------------------
+// ------------------------ Test 5 ------------------------------
 // HTTP page laoding insecure cached image
 // Assuming test 4 succeeded, the image has already been loaded once
 // and hence should be cached per the sjs cache-control header
 // Going into offline mode to ensure we are loading from the cache.
 function test5() {
   gTestBrowser.addEventListener("load", checkLoadEventForTest5, true);
   // Go into offline mode
   Services.io.offline = true;
@@ -193,17 +193,17 @@ function checkLoadEventForTest5() {
   waitForCondition(
     () => content.document.getElementById('mctestdiv').innerHTML == expected,
     test6, "Error: Waited too long for status in Test 5!",
     "OK: Expected result in innerHTML for Test5!");
   // Go back online
   Services.io.offline = false;
 }
 
-//------------------------ Test 6 ------------------------------
+// ------------------------ Test 6 ------------------------------
 // HTTPS page loading insecure cached image
 // Assuming test 4 succeeded, the image has already been loaded once
 // and hence should be cached per the sjs cache-control header
 // Going into offline mode to ensure we are loading from the cache.
 function test6() {
   gTestBrowser.addEventListener("load", checkLoadEventForTest6, true);
   // Go into offline mode
   Services.io.offline = true;
@@ -218,17 +218,17 @@ function checkLoadEventForTest6() {
   waitForCondition(
     () => content.document.getElementById('mctestdiv').innerHTML == expected,
     test7, "Error: Waited too long for status in Test 6!",
     "OK: Expected result in innerHTML for Test6!");
   // Go back online
   Services.io.offline = false;
 }
 
-//------------------------ Test 7 ------------------------------
+// ------------------------ Test 7 ------------------------------
 // HTTP page loading insecure image that went through a double redirect
 function test7() {
   gTestBrowser.addEventListener("load", checkLoadEventForTest7, true);
   var url = gHttpTestRoot + "test_mcb_double_redirect_image.html"
   gTestBrowser.contentWindow.location = url;
 }
 
 function checkLoadEventForTest7() {
@@ -236,17 +236,17 @@ function checkLoadEventForTest7() {
 
   var expected = "image loaded"
   waitForCondition(
     () => content.document.getElementById('mctestdiv').innerHTML == expected,
     test8, "Error: Waited too long for status in Test 7!",
     "OK: Expected result in innerHTML for Test7!");
 }
 
-//------------------------ Test 8 ------------------------------
+// ------------------------ Test 8 ------------------------------
 // HTTP page loading insecure cached image that went through a double redirect
 // Assuming test 7 succeeded, the image has already been loaded once
 // and hence should be cached per the sjs cache-control header
 // Going into offline mode to ensure we are loading from the cache.
 function test8() {
   gTestBrowser.addEventListener("load", checkLoadEventForTest8, true);
   // Go into offline mode
   Services.io.offline = true;
@@ -261,17 +261,17 @@ function checkLoadEventForTest8() {
   waitForCondition(
     () => content.document.getElementById('mctestdiv').innerHTML == expected,
     test9, "Error: Waited too long for status in Test 8!",
     "OK: Expected result in innerHTML for Test8!");
   // Go back online
   Services.io.offline = false;
 }
 
-//------------------------ Test 9 ------------------------------
+// ------------------------ Test 9 ------------------------------
 // HTTPS page loading insecure cached image that went through a double redirect
 // Assuming test 7 succeeded, the image has already been loaded once
 // and hence should be cached per the sjs cache-control header
 // Going into offline mode to ensure we are loading from the cache.
 function test9() {
   gTestBrowser.addEventListener("load", checkLoadEventForTest9, true);
   // Go into offline mode
   Services.io.offline = true;
@@ -286,17 +286,17 @@ function checkLoadEventForTest9() {
   waitForCondition(
     () => content.document.getElementById('mctestdiv').innerHTML == expected,
     cleanUpAfterTests, "Error: Waited too long for status in Test 9!",
     "OK: Expected result in innerHTML for Test9!");
   // Go back online
   Services.io.offline = false;
 }
 
-//------------------------ SETUP ------------------------------
+// ------------------------ SETUP ------------------------------
 
 function test() {
   // Performing async calls, e.g. 'onload', we have to wait till all of them finished
   waitForExplicitFinish();
 
   // Store original preferences so we can restore settings after testing
   origBlockActive = Services.prefs.getBoolPref(PREF_ACTIVE);
   origBlockDisplay = Services.prefs.getBoolPref(PREF_DISPLAY);
--- a/browser/base/content/test/general/browser_no_mcb_on_http_site.js
+++ b/browser/base/content/test/general/browser_no_mcb_on_http_site.js
@@ -56,17 +56,17 @@ function waitForCondition(condition, nex
     }
     tries++;
   }, 100);
   var moveOn = function() {
     clearInterval(interval); nextTest();
   };
 }
 
-//------------- TEST 1 -----------------------------------------
+// ------------- TEST 1 -----------------------------------------
 
 function test1A() {
   gTestBrowser.removeEventListener("load", test1A, true);
 
   var expected = "Verifying MCB does not trigger warning/error for an http page ";
   expected += "with https css that includes http image";
   waitForCondition(
     () => content.document.getElementById('testDiv').innerHTML == expected,
@@ -76,17 +76,17 @@ function test1A() {
 
 function test1B() {
   // set up test 2
   gTestBrowser.addEventListener("load", test2A, true);
   var url = gHttpTestRoot + "test_no_mcb_on_http_site_font.html";
   gTestBrowser.contentWindow.location = url;
 }
 
-//------------- TEST 2 -----------------------------------------
+// ------------- TEST 2 -----------------------------------------
 
 function test2A() {
   gTestBrowser.removeEventListener("load", test2A, true);
 
   var expected = "Verifying MCB does not trigger warning/error for an http page ";
   expected += "with https css that includes http font";
   waitForCondition(
     () => content.document.getElementById('testDiv').innerHTML == expected,
@@ -96,30 +96,30 @@ function test2A() {
 
 function test2B() {
   // set up test 3
   gTestBrowser.addEventListener("load", test3, true);
   var url = gHttpTestRoot + "test_no_mcb_on_http_site_font2.html";
   gTestBrowser.contentWindow.location = url;
 }
 
-//------------- TEST 3 -----------------------------------------
+// ------------- TEST 3 -----------------------------------------
 
 function test3() {
   gTestBrowser.removeEventListener("load", test3, true);
 
   var expected = "Verifying MCB does not trigger warning/error for an http page "
   expected += "with https css that imports another http css which includes http font";
   waitForCondition(
     () => content.document.getElementById('testDiv').innerHTML == expected,
     cleanUpAfterTests, "Error: Waited too long for status in Test 3!",
     "OK: Expected result in innerHTML!");
 }
 
-//------------------------------------------------------
+// ------------------------------------------------------
 
 function test() {
   // Performing async calls, e.g. 'onload', we have to wait till all of them finished
   waitForExplicitFinish();
 
   // Store original preferences so we can restore settings after testing
   origBlockActive = Services.prefs.getBoolPref(PREF_ACTIVE);
   origBlockDisplay = Services.prefs.getBoolPref(PREF_DISPLAY);
--- a/browser/base/content/test/general/browser_sanitizeDialog.js
+++ b/browser/base/content/test/general/browser_sanitizeDialog.js
@@ -628,17 +628,17 @@ add_task(function* test_offline_apps_per
   };
   wh.open();
   yield wh.promiseClosed;
 });
 
 var now_mSec = Date.now();
 var now_uSec = now_mSec * 1000;
 
-///////////////////////////////////////////////////////////////////////////////
+// /////////////////////////////////////////////////////////////////////////////
 
 /**
  * This wraps the dialog and provides some convenience methods for interacting
  * with it.
  *
  * @param aWin
  *        The dialog's nsIDOMWindow
  */
--- a/browser/base/content/test/general/browser_scope.js
+++ b/browser/base/content/test/general/browser_scope.js
@@ -1,9 +1,9 @@
-///////////////////
+// /////////////////
 //
 // Whitelisting this test.
 // As part of bug 1077403, the leaking uncaught rejection should be fixed.
 //
 thisTestLeaksUncaughtRejectionsAndShouldBeFixed("TypeError: this.docShell is null");
 
 function test() {
   ok(!!gBrowser, "gBrowser exists");
--- a/browser/base/content/test/general/browser_tabs_owner.js
+++ b/browser/base/content/test/general/browser_tabs_owner.js
@@ -1,16 +1,16 @@
-///////////////////
+// /////////////////
 //
 // Whitelisting this test.
 // As part of bug 1077403, the leaking uncaught rejection should be fixed.
 //
 thisTestLeaksUncaughtRejectionsAndShouldBeFixed("TypeError: gBrowser._finalizeTabSwitch is not a function");
 
-///////////////////
+// /////////////////
 //
 // Whitelisting this test.
 // As part of bug 1077403, the leaking uncaught rejection should be fixed.
 //
 thisTestLeaksUncaughtRejectionsAndShouldBeFixed("TypeError: gBrowser._finalizeTabSwitch is not a function");
 
 function test() {
   gBrowser.addTab();
--- a/browser/base/content/test/general/contextmenu_common.js
+++ b/browser/base/content/test/general/contextmenu_common.js
@@ -181,17 +181,17 @@ function checkMenuItem(actualItem, actua
  *               "submenu", null,           // submenu
  *                   ["sub1", true,         // submenu contents
  *                    "sub2", false], null, // submenu contents
  *               "lol", false]              // item disabled
  *
  */
 function checkMenu(menu, expectedItems, data) {
     var actualItems = getVisibleMenuItems(menu, data);
-    //ok(false, "Items are: " + actualItems);
+    // ok(false, "Items are: " + actualItems);
     for (var i = 0; i < expectedItems.length; i+=2) {
         var actualItem   = actualItems[i];
         var actualEnabled = actualItems[i + 1];
         var expectedItem = expectedItems[i];
         var expectedEnabled = expectedItems[i + 1];
         if (expectedItem instanceof Array) {
             ok(true, "Checking submenu/menugroup...");
             var previousId = expectedItems[i - 2]; // The last item was the menu ID.
--- a/browser/base/content/test/social/browser_blocklist.js
+++ b/browser/base/content/test/social/browser_blocklist.js
@@ -56,17 +56,17 @@ function test() {
   waitForExplicitFinish();
   // turn on logging for nsBlocklistService.js
   Services.prefs.setBoolPref("extensions.logging.enabled", true);
   registerCleanupFunction(function () {
     Services.prefs.clearUserPref("extensions.logging.enabled");
   });
 
   runSocialTests(tests, undefined, undefined, function () {
-    resetBlocklist().then(finish); //restore to original pref
+    resetBlocklist().then(finish); // restore to original pref
   });
 }
 
 var tests = {
   testSimpleBlocklist: function(next) {
     // this really just tests adding and clearing our blocklist for later tests
     setAndUpdateBlocklist(blocklistURL).then(() => {
       ok(Services.blocklist.isAddonBlocklisted(SocialService.createWrapper(manifest_bad)), "blocking 'blocked'");
--- a/browser/base/content/test/social/browser_share.js
+++ b/browser/base/content/test/social/browser_share.js
@@ -65,21 +65,21 @@ function test() {
 var corpus = [
   {
     url: baseURL+"opengraph/opengraph.html",
     options: {
       // og:title
       title: ">This is my title<",
       // og:description
       description: "A test corpus file for open graph tags we care about",
-      //medium: this.getPageMedium(),
-      //source: this.getSourceURL(),
+      // medium: this.getPageMedium(),
+      // source: this.getSourceURL(),
       // og:url
       url: "https://www.mozilla.org/",
-      //shortUrl: this.getShortURL(),
+      // shortUrl: this.getShortURL(),
       // og:image
       previews:["https://www.mozilla.org/favicon.png"],
       // og:site_name
       siteName: ">My simple test page<"
     }
   },
   {
     // tests that og:url doesn't override the page url if it is bad
--- a/browser/base/content/test/social/browser_social_activation.js
+++ b/browser/base/content/test/social/browser_social_activation.js
@@ -1,13 +1,13 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
-///////////////////
+// /////////////////
 //
 // Whitelisting this test.
 // As part of bug 1077403, the leaking uncaught rejection should be fixed.
 //
 thisTestLeaksUncaughtRejectionsAndShouldBeFixed("TypeError: Assert is null");
 
 
 var SocialService = Cu.import("resource:///modules/SocialService.jsm", {}).SocialService;
--- a/browser/base/content/test/urlbar/browser_bug623155.js
+++ b/browser/base/content/test/urlbar/browser_bug623155.js
@@ -64,21 +64,21 @@ var gWebProgressListener = {
         aIID.equals(Components.interfaces.nsISupports))
       return this;
     throw Components.results.NS_NOINTERFACE;
   },
 
   // ---------------------------------------------------------------------------
   // NOTIFY_LOCATION mode should work fine without these methods.
   //
-  //onStateChange: function() {},
-  //onStatusChange: function() {},
-  //onProgressChange: function() {},
-  //onSecurityChange: function() {},
-  //----------------------------------------------------------------------------
+  // onStateChange: function() {},
+  // onStatusChange: function() {},
+  // onProgressChange: function() {},
+  // onSecurityChange: function() {},
+  // ----------------------------------------------------------------------------
 
   onLocationChange: function(aWebProgress, aRequest, aLocation, aFlags) {
     if (!aRequest) {
       // This is bug 673752, or maybe initial "about:blank".
       return;
     }
 
     ok(gNewTab, "There is a new tab.");
--- a/browser/base/content/utilityOverlay.js
+++ b/browser/base/content/utilityOverlay.js
@@ -287,24 +287,24 @@ function openLinkIn(url, where, params) 
     var referrerPolicySupports = Cc["@mozilla.org/supports-PRUint32;1"].
                                  createInstance(Ci.nsISupportsPRUint32);
     referrerPolicySupports.data = aReferrerPolicy;
 
     var userContextIdSupports = Cc["@mozilla.org/supports-PRUint32;1"].
                                  createInstance(Ci.nsISupportsPRUint32);
     userContextIdSupports.data = aUserContextId;
 
-    sa.appendElement(wuri, /*weak =*/ false);
-    sa.appendElement(charset, /*weak =*/ false);
-    sa.appendElement(referrerURISupports, /*weak =*/ false);
-    sa.appendElement(aPostData, /*weak =*/ false);
-    sa.appendElement(allowThirdPartyFixupSupports, /*weak =*/ false);
-    sa.appendElement(referrerPolicySupports, /*weak =*/ false);
-    sa.appendElement(userContextIdSupports, /*weak =*/ false);
-    sa.appendElement(aPrincipal, /*weak =*/ false);
+    sa.appendElement(wuri, /* weak =*/ false);
+    sa.appendElement(charset, /* weak =*/ false);
+    sa.appendElement(referrerURISupports, /* weak =*/ false);
+    sa.appendElement(aPostData, /* weak =*/ false);
+    sa.appendElement(allowThirdPartyFixupSupports, /* weak =*/ false);
+    sa.appendElement(referrerPolicySupports, /* weak =*/ false);
+    sa.appendElement(userContextIdSupports, /* weak =*/ false);
+    sa.appendElement(aPrincipal, /* weak =*/ false);
 
     let features = "chrome,dialog=no,all";
     if (aIsPrivate) {
       features += ",private";
     }
 
     Services.ww.openWindow(w || window, getBrowserURL(), null, features, sa);
     return;
@@ -684,17 +684,17 @@ function openPreferences(paneID, extraAr
   if (!win) {
     const Cc = Components.classes;
     const Ci = Components.interfaces;
     let windowArguments = Cc["@mozilla.org/array;1"]
                             .createInstance(Ci.nsIMutableArray);
     let supportsStringPrefURL = Cc["@mozilla.org/supports-string;1"]
                                   .createInstance(Ci.nsISupportsString);
     supportsStringPrefURL.data = preferencesURL;
-    windowArguments.appendElement(supportsStringPrefURL, /*weak =*/ false);
+    windowArguments.appendElement(supportsStringPrefURL, /* weak =*/ false);
 
     win = Services.ww.openWindow(null, Services.prefs.getCharPref("browser.chromeURL"),
                                  "_blank", "chrome,dialog=no,all", windowArguments);
   } else {
     let shouldReplaceFragment = friendlyCategoryName ? "whenComparingAndReplace" : "whenComparing";
     newLoad = !win.switchToTabHavingURI(preferencesURL, true, { ignoreFragment: shouldReplaceFragment, replaceQueryString: true });
     browser = win.gBrowser.selectedBrowser;
   }
--- a/browser/base/content/web-panels.js
+++ b/browser/base/content/web-panels.js
@@ -18,17 +18,17 @@ var panelProgressListener = {
                                  aCurTotalProgress, aMaxTotalProgress) {
     },
 
     onStateChange : function(aWebProgress, aRequest, aStateFlags, aStatus)
     {
         if (!aRequest)
           return;
 
-        //ignore local/resource:/chrome: files
+        // ignore local/resource:/chrome: files
         if (aStatus == NS_NET_STATUS_READ_FROM || aStatus == NS_NET_STATUS_WROTE_TO)
            return;
 
         if (aStateFlags & Ci.nsIWebProgressListener.STATE_START &&
             aStateFlags & Ci.nsIWebProgressListener.STATE_IS_NETWORK) {
             window.parent.document.getElementById('sidebar-throbber').setAttribute("loading", "true");
         }
         else if (aStateFlags & Ci.nsIWebProgressListener.STATE_STOP &&
--- a/browser/components/customizableui/CustomizableUI.jsm
+++ b/browser/components/customizableui/CustomizableUI.jsm
@@ -88,17 +88,17 @@ var gPlacements = new Map();
 
 /**
  * gFuturePlacements represent placements that will happen for areas that have
  * not yet loaded (due to lazy-loading). This can occur when add-ons register
  * widgets.
  */
 var gFuturePlacements = new Map();
 
-//XXXunf Temporary. Need a nice way to abstract functions to build widgets
+// XXXunf Temporary. Need a nice way to abstract functions to build widgets
 //       of these types.
 var gSupportedWidgetTypes = new Set(["button", "view", "custom"]);
 
 /**
  * gPanelsForWindow is a list of known panels in a window which we may need to close
  * should command events fire which target them.
  */
 var gPanelsForWindow = new WeakMap();
@@ -492,17 +492,17 @@ var CustomizableUIInternal = {
     let areaIsKnown = gAreas.has(aName);
     let props = areaIsKnown ? gAreas.get(aName) : new Map();
     const kImmutableProperties = new Set(["type", "legacy", "overflowable"]);
     for (let key in aProperties) {
       if (areaIsKnown && kImmutableProperties.has(key) &&
           props.get(key) != aProperties[key]) {
         throw new Error("An area cannot change the property for '" + key + "'");
       }
-      //XXXgijs for special items, we need to make sure they have an appropriate ID
+      // XXXgijs for special items, we need to make sure they have an appropriate ID
       // so we aren't perpetually in a non-default state:
       if (key == "defaultPlacements" && Array.isArray(aProperties[key])) {
         props.set(key, aProperties[key].map(x => this.isSpecialWidget(x) ? this.ensureSpecialWidgetId(x) : x ));
       } else {
         props.set(key, aProperties[key]);
       }
     }
     // Default to a toolbar:
@@ -1488,17 +1488,17 @@ var CustomizableUIInternal = {
     if (aWidget.type == "button") {
       if (aWidget.onCommand) {
         try {
           aWidget.onCommand.call(null, aEvent);
         } catch (e) {
           log.error(e);
         }
       } else {
-        //XXXunf Need to think this through more, and formalize.
+        // XXXunf Need to think this through more, and formalize.
         Services.obs.notifyObservers(aNode,
                                      "customizedui-widget-command",
                                      aWidget.id);
       }
     } else if (aWidget.type == "view") {
       let ownerWindow = aNode.ownerGlobal;
       let area = this.getPlacementOfWidget(aNode.id).area;
       let anchor = aNode;
@@ -1517,17 +1517,17 @@ var CustomizableUIInternal = {
     log.debug("handleWidgetClick");
     if (aWidget.onClick) {
       try {
         aWidget.onClick.call(null, aEvent);
       } catch (e) {
         Cu.reportError(e);
       }
     } else {
-      //XXXunf Need to think this through more, and formalize.
+      // XXXunf Need to think this through more, and formalize.
       Services.obs.notifyObservers(aNode, "customizedui-widget-click", aWidget.id);
     }
   },
 
   _getPanelForNode: function(aNode) {
     let panel = aNode;
     while (panel && panel.localName != "panel")
       panel = panel.parentNode;
@@ -2140,17 +2140,17 @@ var CustomizableUIInternal = {
     }
     for (let [win, ] of gBuildWindows) {
       this._dispatchToolboxEventToWindow(aEventType, aDetails, win);
     }
   },
 
   createWidget: function(aProperties) {
     let widget = this.normalizeWidget(aProperties, CustomizableUI.SOURCE_EXTERNAL);
-    //XXXunf This should probably throw.
+    // XXXunf This should probably throw.
     if (!widget) {
       log.error("unable to normalize widget");
       return undefined;
     }
 
     gPalette.set(widget.id, widget);
 
     // Clear our caches:
@@ -2297,17 +2297,17 @@ var CustomizableUIInternal = {
   // Returns true if the area will eventually lazily restore (but hasn't yet).
   isAreaLazy: function(aArea) {
     if (gPlacements.has(aArea)) {
       return false;
     }
     return gAreas.get(aArea).has("legacy");
   },
 
-  //XXXunf Log some warnings here, when the data provided isn't up to scratch.
+  // XXXunf Log some warnings here, when the data provided isn't up to scratch.
   normalizeWidget: function(aData, aSource) {
     let widget = {
       implementation: aData,
       source: aSource || CustomizableUI.SOURCE_EXTERNAL,
       instances: new Map(),
       currentArea: null,
       removable: true,
       overflows: true,
@@ -3889,17 +3889,17 @@ function WidgetSingleWrapper(aWidget, aN
 
 /**
  * XULWidgetGroupWrapper is the common interface for interacting with an entire
  * widget group - AKA, all instances of a widget across a series of windows.
  * This particular wrapper is only used for widgets created via the old-school
  * XUL method (overlays, or programmatically injecting toolbaritems, or other
  * such things).
  */
-//XXXunf Going to need to hook this up to some events to keep it all live.
+// XXXunf Going to need to hook this up to some events to keep it all live.
 function XULWidgetGroupWrapper(aWidgetId) {
   this.isGroup = true;
   this.id = aWidgetId;
   this.type = "custom";
   this.provider = CustomizableUI.PROVIDER_XUL;
 
   this.forWindow = function XULWidgetGroupWrapper_forWindow(aWindow) {
     let wrapperMap;
--- a/browser/components/customizableui/CustomizableWidgets.jsm
+++ b/browser/components/customizableui/CustomizableWidgets.jsm
@@ -660,17 +660,17 @@ const CustomizableWidgets = [
       let zoomResetButton = node.childNodes[2];
       let window = aDocument.defaultView;
       function updateZoomResetButton() {
         let updateDisplay = true;
         // Label should always show 100% in customize mode, so don't update:
         if (aDocument.documentElement.hasAttribute("customizing")) {
           updateDisplay = false;
         }
-        //XXXgijs in some tests we get called very early, and there's no docShell on the
+        // XXXgijs in some tests we get called very early, and there's no docShell on the
         // tabbrowser. This breaks the zoom toolkit code (see bug 897410). Don't let that happen:
         let zoomFactor = 100;
         try {
           zoomFactor = Math.round(window.ZoomManager.zoom * 100);
         } catch (e) {}
         zoomResetButton.setAttribute("label", CustomizableUI.getLocalizedProperty(
           buttons[1], "label", [updateDisplay ? zoomFactor : 100]
         ));
--- a/browser/components/customizableui/CustomizeMode.jsm
+++ b/browser/components/customizableui/CustomizeMode.jsm
@@ -799,17 +799,17 @@ CustomizeMode.prototype = {
       this.visiblePalette.appendChild(fragment);
       this._stowedPalette = this.window.gNavToolbox.palette;
       this.window.gNavToolbox.palette = this.visiblePalette;
     } catch (ex) {
       log.error(ex);
     }
   },
 
-  //XXXunf Maybe this should use -moz-element instead of wrapping the node?
+  // XXXunf Maybe this should use -moz-element instead of wrapping the node?
   //       Would ensure no weird interactions/event handling from original node,
   //       and makes it possible to put this in a lazy-loaded iframe/real tab
   //       while still getting rid of the need for overlays.
   makePaletteItem: function(aWidget, aPlace) {
     let widgetNode = aWidget.forWindow(this.window).node;
     if (!widgetNode) {
       log.error("Widget with id " + aWidget.id + " does not return a valid node");
       return null;
@@ -832,22 +832,22 @@ CustomizeMode.prototype = {
       while (paletteChild) {
         nextChild = paletteChild.nextElementSibling;
         let provider = CustomizableUI.getWidget(paletteChild.id).provider;
         if (provider == CustomizableUI.PROVIDER_XUL) {
           let unwrappedPaletteItem =
             yield this.deferredUnwrapToolbarItem(paletteChild);
           this._stowedPalette.appendChild(unwrappedPaletteItem);
         } else if (provider == CustomizableUI.PROVIDER_API) {
-          //XXXunf Currently this doesn't destroy the (now unused) node. It would
+          // XXXunf Currently this doesn't destroy the (now unused) node. It would
           //       be good to do so, but we need to keep strong refs to it in
           //       CustomizableUI (can't iterate of WeakMaps), and there's the
           //       question of what behavior wrappers should have if consumers
           //       keep hold of them.
-          //widget.destroyInstance(widgetNode);
+          // widget.destroyInstance(widgetNode);
         } else if (provider == CustomizableUI.PROVIDER_SPECIAL) {
           this.visiblePalette.removeChild(paletteChild);
         }
 
         paletteChild = nextChild;
       }
       this.visiblePalette.hidden = false;
       this.window.gNavToolbox.palette = this._stowedPalette;
@@ -1020,17 +1020,17 @@ CustomizeMode.prototype = {
     if (aWrapper.hasAttribute("itemchecked")) {
       toolbarItem.checked = true;
     }
 
     if (aWrapper.hasAttribute("itemcommand")) {
       let commandID = aWrapper.getAttribute("itemcommand");
       toolbarItem.setAttribute("command", commandID);
 
-      //XXX Bug 309953 - toolbarbuttons aren't in sync with their commands after customizing
+      // XXX Bug 309953 - toolbarbuttons aren't in sync with their commands after customizing
       let command = this.document.getElementById(commandID);
       if (command && command.hasAttribute("disabled")) {
         toolbarItem.setAttribute("disabled", command.getAttribute("disabled"));
       }
     }
 
     let wrappedContext = toolbarItem.getAttribute("wrapped-context");
     if (wrappedContext) {
@@ -2256,17 +2256,17 @@ CustomizeMode.prototype = {
     let orphanedItems = narrowItemsAfterWideItem % CustomizableUI.PANEL_COLUMN_COUNT;
     let placeholders = CustomizableUI.PANEL_COLUMN_COUNT - orphanedItems;
 
     let currentPlaceholderCount = contents.querySelectorAll("." + kPlaceholderClass).length;
     if (placeholders > currentPlaceholderCount) {
       while (placeholders-- > currentPlaceholderCount) {
         let placeholder = doc.createElement("toolbarpaletteitem");
         placeholder.classList.add(kPlaceholderClass);
-        //XXXjaws The toolbarbutton child here is only necessary to get
+        // XXXjaws The toolbarbutton child here is only necessary to get
         //  the styling right here.
         let placeholderChild = doc.createElement("toolbarbutton");
         placeholderChild.classList.add(kPlaceholderClass + "-child");
         placeholder.appendChild(placeholderChild);
         contents.appendChild(placeholder);
       }
     } else if (placeholders < currentPlaceholderCount) {
       while (placeholders++ < currentPlaceholderCount) {
--- a/browser/components/customizableui/DragPositionManager.jsm
+++ b/browser/components/customizableui/DragPositionManager.jsm
@@ -351,17 +351,17 @@ AreaPositionManager.prototype = {
       this._nodePositionStore.set(aNode, rect);
     }
     return rect;
   },
 
   _firstInRow: function(aNode) {
     // XXXmconley: I'm not entirely sure why we need to take the floor of these
     // values - it looks like, periodically, we're getting fractional pixels back
-    //from lazyStoreGet. I've filed bug 994247 to investigate.
+    // from lazyStoreGet. I've filed bug 994247 to investigate.
     let bound = Math.floor(this._lazyStoreGet(aNode).top);
     let rv = aNode;
     let prev;
     while (rv && (prev = this._getVisibleSiblingForDirection(rv, "previous"))) {
       if (Math.floor(this._lazyStoreGet(prev).bottom) <= bound) {
         return rv;
       }
       rv = prev;
--- a/browser/components/customizableui/content/panelUI.xml
+++ b/browser/components/customizableui/content/panelUI.xml
@@ -441,17 +441,17 @@
         ]]></body>
       </method>
 
       <method name="_heightOfSubview">
         <parameter name="aSubview"/>
         <parameter name="aContainerToCheck"/>
         <body><![CDATA[
           function getFullHeight(element) {
-            //XXXgijs: unfortunately, scrollHeight rounds values, and there's no alternative
+            // XXXgijs: unfortunately, scrollHeight rounds values, and there's no alternative
             // that works with overflow: auto elements. Fortunately for us,
             // we have exactly 1 (potentially) scrolling element in here (the subview body),
             // and rounding 1 value is OK - rounding more than 1 and adding them means we get
             // off-by-1 errors. Now we might be off by a subpixel, but we care less about that.
             // So, use scrollHeight *only* if the element is vertically scrollable.
             let height;
             let elementCS;
             if (element.scrollTopMax) {
--- a/browser/components/customizableui/test/browser_942581_unregisterArea_keeps_placements.js
+++ b/browser/components/customizableui/test/browser_942581_unregisterArea_keeps_placements.js
@@ -65,17 +65,17 @@ add_task(function*() {
   // Recreate ourselves with the default placements being the same:
   toolbarNode = createToolbarWithPlacements(kToolbarName, widgetIds);
   // Should now be back to default:
   checkAbstractAndRealPlacements(toolbarNode, widgetIds);
   CustomizableUI.unregisterArea(kToolbarName, true);
   checkWidgetFates(widgetIds);
   toolbarNode.remove();
 
-  //XXXgijs: ensure cleanup function doesn't barf:
+  // XXXgijs: ensure cleanup function doesn't barf:
   gAddedToolbars.delete(kToolbarName);
 
   // Remove all the XUL widgets, destroy the others:
   for (let widget of widgetIds) {
     let widgetWrapper = CustomizableUI.getWidget(widget);
     if (widgetWrapper.provider == CustomizableUI.PROVIDER_XUL) {
       gNavToolbox.palette.querySelector("#" + widget).remove();
     } else {
--- a/browser/components/customizableui/test/browser_952963_areaType_getter_no_area.js
+++ b/browser/components/customizableui/test/browser_952963_areaType_getter_no_area.js
@@ -37,16 +37,16 @@ add_task(function*() {
   CustomizableUI.createWidget(spec);
   toolbarNode = createToolbarWithPlacements(kToolbarName, [kUnregisterAreaTestWidget]);
   CustomizableUI.unregisterArea(kToolbarName);
   toolbarNode.remove();
   w = CustomizableUI.getWidget(spec.id);
   checkAreaType(w);
   CustomizableUI.removeWidgetFromArea(kUnregisterAreaTestWidget);
   checkAreaType(w);
-  //XXXgijs: ensure cleanup function doesn't barf:
+  // XXXgijs: ensure cleanup function doesn't barf:
   gAddedToolbars.delete(kToolbarName);
 });
 
 add_task(function* asyncCleanup() {
   yield resetCustomization();
 });
 
--- a/browser/components/customizableui/test/browser_968447_bookmarks_toolbar_items_in_panel.js
+++ b/browser/components/customizableui/test/browser_968447_bookmarks_toolbar_items_in_panel.js
@@ -38,17 +38,17 @@ add_task(function*() {
   yield newWin.PanelUI.show();
   let newWinBookmarksToolbarPlaceholder = newWin.document.getElementById(buttonId);
   ok(newWinBookmarksToolbarPlaceholder.classList.contains("toolbarbutton-1"),
      "Button in new window should have toolbarbutton-1 class");
   is(newWinBookmarksToolbarPlaceholder.getAttribute("wrap"), "true",
      "Button in new window should have 'wrap' attribute");
 
   newWin.PanelUI.panel.removeEventListener("popuphidden", hideTrace);
-  //XXXgijs on Linux, we're sometimes seeing the panel being hidden early
+  // XXXgijs on Linux, we're sometimes seeing the panel being hidden early
   // in the newly created window, probably because something else steals focus.
   if (newWin.PanelUI.panel.state != "closed") {
     info("Panel is still open in new window, waiting for it to close");
     panelHiddenPromise = promisePanelHidden(newWin);
     newWin.PanelUI.hide();
     yield panelHiddenPromise;
   } else {
     info("panel was already closed");
--- a/browser/components/customizableui/test/browser_973641_button_addon.js
+++ b/browser/components/customizableui/test/browser_973641_button_addon.js
@@ -25,17 +25,17 @@ add_task(function*() {
   let addonButton = document.getElementById(kButton);
   let navBar = document.getElementById("nav-bar");
   ok(addonButton, "Addon button exists");
   ok(navBar.contains(addonButton), "Addon button is in the navbar");
   yield checkButtonFunctionality(addonButton);
 
   resetTabs();
 
-  //move the add-on button in the Panel Menu
+  // move the add-on button in the Panel Menu
   CustomizableUI.addWidgetToArea(kButton, CustomizableUI.AREA_PANEL);
   let addonButtonInNavbar = navBar.getElementsByAttribute("id", kButton);
   ok(!navBar.contains(addonButton), "Addon button was removed from the browser bar");
 
   // check the addon button's functionality in the Panel Menu
   yield PanelUI.show();
   var panelMenu = document.getElementById("PanelUI-mainView");
   let addonButtonInPanel = panelMenu.getElementsByAttribute("id", kButton);
@@ -50,22 +50,22 @@ add_task(function* asyncCleanup() {
   yield resetCustomization();
   ok(CustomizableUI.inDefaultState, "The UI is in default state again.");
 
   // destroy the widget
   CustomizableUI.destroyWidget(kButton);
 });
 
 function resetTabs() {
-  //close all opened tabs
+  // close all opened tabs
   while (gBrowser.tabs.length > 1) {
     gBrowser.removeTab(gBrowser.selectedTab);
   }
 
-  //restore the initial tab
+  // restore the initial tab
   gBrowser.addTab(initialLocation);
   gBrowser.removeTab(gBrowser.selectedTab);
 }
 
 function* checkButtonFunctionality(aButton) {
   aButton.click();
   yield waitForCondition(() => gBrowser.currentURI &&
                                gBrowser.currentURI.spec == "about:addons");
--- a/browser/components/customizableui/test/browser_995164_registerArea_during_customize_mode.js
+++ b/browser/components/customizableui/test/browser_995164_registerArea_during_customize_mode.js
@@ -86,17 +86,17 @@ add_task(function*() {
   button.scrollIntoView();
   simulateItemDrag(button, toolbar);
   ok(CustomizableUI.getPlacementOfWidget(kNonPlacedWidgetId), "Button moved out of palette");
   is(CustomizableUI.getPlacementOfWidget(kNonPlacedWidgetId).area, TOOLBARID, "Button's back on toolbar");
   ok(toolbar.querySelector(`#${kNonPlacedWidgetId}`), "Button really is on toolbar.");
   ok(otherTB.querySelector(`#${kNonPlacedWidgetId}`), "Button is on other toolbar, too.");
 
   let wasInformedCorrectlyOfAreaDisappearing = false;
-  //XXXgijs So we could be using promiseWindowClosed here. However, after
+  // XXXgijs So we could be using promiseWindowClosed here. However, after
   // repeated random oranges, I'm instead relying on onWindowClosed below to
   // fire appropriately - it is linked to an unload event as well, and so
   // reusing it prevents a potential race between unload handlers where the
   // one from promiseWindowClosed could fire before the onWindowClosed
   // (and therefore onAreaNodeRegistered) one, causing the test to fail.
   let windowCloseDeferred = Promise.defer();
   listener = {
     onAreaNodeUnregistered: function(aArea, aNode, aReason) {
--- a/browser/components/feeds/WebContentConverter.js
+++ b/browser/components/feeds/WebContentConverter.js
@@ -829,17 +829,17 @@ WebContentConverterRegistrar.prototype =
 
     // We need to do this _after_ registering all of the available handlers,
     // so that getWebContentHandlerByURI can return successfully.
     let autoBranch;
     try {
       autoBranch = ps.getBranch(PREF_CONTENTHANDLERS_AUTO);
     } catch (e) {
       // No auto branch yet, that's fine
-      //LOG("WCCR.init: There is no auto branch, benign");
+      // LOG("WCCR.init: There is no auto branch, benign");
     }
 
     if (autoBranch) {
       for (let type of autoBranch.getChildList("")) {
         let uri = autoBranch.getCharPref(type);
         if (uri) {
           let handler = this.getWebContentHandlerByURI(type, uri);
           if (handler) {
--- a/browser/components/migration/ESEDBReader.jsm
+++ b/browser/components/migration/ESEDBReader.jsm
@@ -104,34 +104,34 @@ let gOpenDBs = new Map();
 // Track open libraries
 let gLibs = {};
 this.ESE = ESE; // Required for tests.
 this.KERNEL = KERNEL; // ditto
 this.gLibs = gLibs; // ditto
 
 function convertESEError(errorCode) {
   switch (errorCode) {
-    case -1213 /*JET_errPageSizeMismatch */:
-    case -1002 /*JET_errInvalidName*/:
-    case -1507 /*JET_errColumnNotFound */:
+    case -1213 /* JET_errPageSizeMismatch */:
+    case -1002 /* JET_errInvalidName*/:
+    case -1507 /* JET_errColumnNotFound */:
       // The DB format has changed and we haven't updated this migration code:
       return "The database format has changed, error code: " + errorCode;
-    case -1207 /*JET_errDatabaseLocked */:
-    case -1302 /*JET_errTableLocked */:
+    case -1207 /* JET_errDatabaseLocked */:
+    case -1302 /* JET_errTableLocked */:
       return "The database or table is locked, error code: " + errorCode;
     case -1809 /* JET_errPermissionDenied*/:
     case -1907 /* JET_errAccessDenied */:
       return "Access or permission denied, error code: " + errorCode;
     case -1044 /* JET_errInvalidFilename */:
       return "Invalid file name";
-    case -1811 /*JET_errFileNotFound */:
+    case -1811 /* JET_errFileNotFound */:
       return "File not found";
-    case -550 /*JET_errDatabaseDirtyShutdown */:
+    case -550 /* JET_errDatabaseDirtyShutdown */:
       return "Database in dirty shutdown state (without the requisite logs?)";
-    case -514 /*JET_errBadLogVersion */:
+    case -514 /* JET_errBadLogVersion */:
       return "Database log version does not match the version of ESE in use.";
     default:
       return "Unknown error: " + errorCode;
   }
 }
 
 function handleESEError(method, methodName, shouldThrow = true, errorLog = true) {
   return function () {
--- a/browser/components/migration/IEProfileMigrator.js
+++ b/browser/components/migration/IEProfileMigrator.js
@@ -28,17 +28,17 @@ XPCOMUtils.defineLazyModuleGetter(this, 
                                   "resource://gre/modules/PlacesUtils.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "OSCrypto",
                                   "resource://gre/modules/OSCrypto.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "WindowsRegistry",
                                   "resource://gre/modules/WindowsRegistry.jsm");
 
 Cu.importGlobalProperties(["URL"]);
 
-////////////////////////////////////////////////////////////////////////////////
+// //////////////////////////////////////////////////////////////////////////////
 // Resources
 
 
 function History() {
 }
 
 History.prototype = {
   type: MigrationUtils.resourceTypes.HISTORY,
@@ -461,18 +461,18 @@ Settings.prototype = {
         Services.prefs.setBoolPref(aPref, value);
         break;
       default:
         throw new Error("Unexpected value type: " + (typeof value));
     }
   }
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// Migrator
+// //////////////////////////////////////////////////////////////////////////////
+// // Migrator
 
 function IEProfileMigrator()
 {
   this.wrappedJSObject = this; // export this to be able to use it in the unittest.
 }
 
 IEProfileMigrator.prototype = Object.create(MigratorPrototype);
 
--- a/browser/components/migration/MSMigrationUtils.jsm
+++ b/browser/components/migration/MSMigrationUtils.jsm
@@ -36,18 +36,18 @@ const RESULT_SUCCESS = 0;
 const VAULT_ENUMERATE_ALL_ITEMS = 512;
 const WEB_CREDENTIALS_VAULT_ID = [0x4BF4C442,
                                   0x41A09B8A,
                                   0x4ADD80B3,
                                   0x28DB4D70];
 
 Cu.importGlobalProperties(["File"]);
 
-////////////////////////////////////////////////////////////////////////////////
-//// Helpers.
+// //////////////////////////////////////////////////////////////////////////////
+// // Helpers.
 
 const wintypes = {
   BOOL: ctypes.int,
   DWORD: ctypes.uint32_t,
   DWORDLONG: ctypes.uint64_t,
   CHAR: ctypes.char,
   PCHAR: ctypes.char.ptr,
   LPCWSTR: ctypes.char16_t.ptr,
--- a/browser/components/migration/MigrationUtils.jsm
+++ b/browser/components/migration/MigrationUtils.jsm
@@ -383,17 +383,17 @@ this.MigratorPrototype = {
       }
     }
     catch (ex) {
       Cu.reportError(ex);
     }
     return exists;
   },
 
-  /*** PRIVATE STUFF - DO NOT OVERRIDE ***/
+  /** * PRIVATE STUFF - DO NOT OVERRIDE ***/
   _getMaybeCachedResources: function PMB__getMaybeCachedResources(aProfile) {
     let profileKey = aProfile ? aProfile.id : "";
     if (this._resourcesByProfile) {
       if (profileKey in this._resourcesByProfile)
         return this._resourcesByProfile[profileKey];
     }
     else {
       this._resourcesByProfile = { };
--- a/browser/components/migration/tests/unit/test_IE7_passwords.js
+++ b/browser/components/migration/tests/unit/test_IE7_passwords.js
@@ -334,17 +334,17 @@ add_task(function* test_passwordsAvailab
 
   let crypto = new OSCrypto();
   let hashes = []; // the hashes of all migrator websites, this is going to be used for the clean up
 
   do_register_cleanup(() => {
     Services.logins.removeAllLogins();
     logins = Services.logins.getAllLogins({});
     Assert.equal(logins.length, 0, "There are no logins after the cleanup");
-    //remove all the values created in this test from the registry
+    // remove all the values created in this test from the registry
     removeAllValues(Storage2Key, hashes);
     // restore all backed up values
     restore(Storage2Key);
 
     // clean the dummy value
     if (Storage2Key.hasValue("dummy")) {
       Storage2Key.removeValue("dummy");
     }
--- a/browser/components/newtab/NewTabMessages.jsm
+++ b/browser/components/newtab/NewTabMessages.jsm
@@ -1,9 +1,9 @@
-/*global
+/* global
   NewTabWebChannel,
   NewTabPrefsProvider,
   PlacesProvider,
   PreviewProvider,
   NewTabSearchProvider,
   Preferences,
   XPCOMUtils,
   Task
@@ -159,17 +159,17 @@ let NewTabMessages = {
    */
   handlePlacesChange(type, data) {
     NewTabWebChannel.broadcast(ACTIONS.links.outPlacesChange, {type, data});
   },
 
   /*
    * Broadcast current engine has changed to all open newtab pages
    */
-  _handleCurrentEngineChange(name, value) { //jshint unused: false
+  _handleCurrentEngineChange(name, value) { // jshint unused: false
     let engine = value;
     NewTabWebChannel.broadcast(ACTIONS.search.outSearch.currentEngine, engine);
   },
 
   /*
    * Broadcast preference changes to all open newtab pages
    */
   handlePrefChange(actionName, value) {
--- a/browser/components/newtab/aboutNewTabService.js
+++ b/browser/components/newtab/aboutNewTabService.js
@@ -98,17 +98,17 @@ AboutNewTabService.prototype = {
   _overridden: false,
 
   classID: Components.ID("{dfcd2adc-7867-4d3a-ba70-17501f208142}"),
   QueryInterface: XPCOMUtils.generateQI([Ci.nsIAboutNewTabService]),
   _xpcom_categories: [{
     service: true
   }],
 
-  _handleToggleEvent(prefName, stateEnabled, forceState) { //jshint unused:false
+  _handleToggleEvent(prefName, stateEnabled, forceState) { // jshint unused:false
     if (this.toggleRemote(stateEnabled, forceState)) {
       Services.obs.notifyObservers(null, "newtab-url-changed", ABOUT_URL);
     }
   },
 
   /**
    * React to changes to the remote newtab pref.
    *
--- a/browser/components/newtab/tests/browser/browser_newtab_overrides.js
+++ b/browser/components/newtab/tests/browser/browser_newtab_overrides.js
@@ -1,9 +1,9 @@
-/*globals
+/* globals
   XPCOMUtils,
   aboutNewTabService,
   Services,
   ContentTask,
   TestUtils,
   BrowserOpenTab,
   registerCleanupFunction,
   is,
--- a/browser/components/newtab/tests/xpcshell/test_NewTabSearchProvider.js
+++ b/browser/components/newtab/tests/xpcshell/test_NewTabSearchProvider.js
@@ -45,17 +45,17 @@ add_task(function* test_search() {
   ["engines", "currentEngine"].forEach(stateProps);
 
   // check that the current engine is correct and has correct properties
   let {currentEngine} = state;
   equal(currentEngine.name, Services.search.currentEngine.name, "Current engine has been correctly set");
   var engineProps = hasProp(currentEngine);
   ["name", "placeholder", "iconBuffer"].forEach(engineProps);
 
-  //create dummy test engines to test observer
+  // create dummy test engines to test observer
   Services.search.addEngineWithDetails("TestSearch1", "", "", "", "GET",
     "http://example.com/?q={searchTerms}");
   Services.search.addEngineWithDetails("TestSearch2", "", "", "", "GET",
     "http://example.com/?q={searchTerms}");
 
   // set one of the dummy test engines to the default engine
   Services.search.defaultEngine = Services.search.getEngineByName("TestSearch1");
 
--- a/browser/components/nsBrowserContentHandler.js
+++ b/browser/components/nsBrowserContentHandler.js
@@ -204,41 +204,41 @@ function openWindow(parent, url, target,
     var uriArray = Components.classes["@mozilla.org/array;1"]
                        .createInstance(Components.interfaces.nsIMutableArray);
     stringArgs.forEach(function (uri) {
       var sstring = Components.classes["@mozilla.org/supports-string;1"]
                               .createInstance(nsISupportsString);
       sstring.data = uri;
       uriArray.appendElement(sstring, /* weak = */ false);
     });
-    argArray.appendElement(uriArray, /*weak =*/ false);
+    argArray.appendElement(uriArray, /* weak =*/ false);
   } else {
-    argArray.appendElement(null, /*weak =*/ false);
+    argArray.appendElement(null, /* weak =*/ false);
   }
 
   // Pass these as null to ensure that we always trigger the "single URL"
   // behavior in browser.js's gBrowserInit.onLoad (which handles the window
   // arguments)
-  argArray.appendElement(null, /*weak =*/ false); // charset
-  argArray.appendElement(null, /*weak =*/ false); // referer
-  argArray.appendElement(null, /*weak =*/ false); // postData
-  argArray.appendElement(null, /*weak =*/ false); // allowThirdPartyFixup
+  argArray.appendElement(null, /* weak =*/ false); // charset
+  argArray.appendElement(null, /* weak =*/ false); // referer
+  argArray.appendElement(null, /* weak =*/ false); // postData
+  argArray.appendElement(null, /* weak =*/ false); // allowThirdPartyFixup
 
   return Services.ww.openWindow(parent, url, target, features, argArray);
 }
 
 function openPreferences() {
   var args = Components.classes["@mozilla.org/array;1"]
                      .createInstance(Components.interfaces.nsIMutableArray);
 
   var wuri = Components.classes["@mozilla.org/supports-string;1"]
                        .createInstance(Components.interfaces.nsISupportsString);
   wuri.data = "about:preferences";
 
-  args.appendElement(wuri, /*weak =*/ false);
+  args.appendElement(wuri, /* weak = */ false);
 
   Services.ww.openWindow(null, gBrowserContentHandler.chromeURL,
                          "_blank",
                          "chrome,dialog=no,all",
                          args);
 }
 
 function logSystemBasedSearch(engine) {
@@ -256,20 +256,20 @@ function doSearch(searchTerm, cmdLine) {
   // fill our nsIMutableArray with uri-as-wstring, null, null, postData
   var args = Components.classes["@mozilla.org/array;1"]
                      .createInstance(Components.interfaces.nsIMutableArray);
 
   var wuri = Components.classes["@mozilla.org/supports-string;1"]
                        .createInstance(Components.interfaces.nsISupportsString);
   wuri.data = submission.uri.spec;
 
-  args.appendElement(wuri, /*weak =*/ false);
-  args.appendElement(null, /*weak =*/ false);
-  args.appendElement(null, /*weak =*/ false);
-  args.appendElement(submission.postData, /*weak =*/ false);
+  args.appendElement(wuri, /* weak =*/ false);
+  args.appendElement(null, /* weak =*/ false);
+  args.appendElement(null, /* weak =*/ false);
+  args.appendElement(submission.postData, /* weak =*/ false);
 
   // XXXbsmedberg: use handURIToExistingBrowser to obey tabbed-browsing
   // preferences, but need nsIBrowserDOMWindow extensions
 
   return Services.ww.openWindow(null, gBrowserContentHandler.chromeURL,
                                 "_blank",
                                 "chrome,dialog=no,all" +
                                 gBrowserContentHandler.getFeatures(cmdLine),
--- a/browser/components/places/PlacesUIUtils.jsm
+++ b/browser/components/places/PlacesUIUtils.jsm
@@ -955,17 +955,17 @@ this.PlacesUIUtils = {
     // open (Bug 630255).
     var where = browserWindow ?
                 browserWindow.whereToOpenLink(aEvent, false, true) : "window";
     if (where == "window") {
       // There is no browser window open, thus open a new one.
       var uriList = PlacesUtils.toISupportsString(urls.join("|"));
       var args = Cc["@mozilla.org/array;1"].
                   createInstance(Ci.nsIMutableArray);
-      args.appendElement(uriList, /*weak =*/ false);
+      args.appendElement(uriList, /* weak =*/ false);
       browserWindow = Services.ww.openWindow(aWindow,
                                              "chrome://browser/content/browser.xul",
                                              null, "chrome,dialog=no,all", args);
       return;
     }
 
     var loadInBackground = where == "tabshifted" ? true : false;
     // For consistency, we want all the bookmarks to open in new tabs, instead
@@ -1718,18 +1718,18 @@ XPCOMUtils.defineLazyGetter(PlacesUIUtil
       let annoObj = { name: PlacesUIUtils.DESCRIPTION_ANNO,
                       type: Ci.nsIAnnotationService.TYPE_STRING,
                       flags: 0,
                       value: aDescription,
                       expires: Ci.nsIAnnotationService.EXPIRE_NEVER };
       return new PlacesSetItemAnnotationTransaction(aItemId, annoObj);
     },
 
-    ////////////////////////////////////////////////////////////////////////////
-    //// nsITransactionManager forwarders.
+    // //////////////////////////////////////////////////////////////////////////
+    // // nsITransactionManager forwarders.
 
     beginBatch: () =>
       PlacesUtils.transactionManager.beginBatch(null),
 
     endBatch: () =>
       PlacesUtils.transactionManager.endBatch(false),
 
     doTransaction: (txn) =>
--- a/browser/components/places/content/bookmarkProperties.js
+++ b/browser/components/places/content/bookmarkProperties.js
@@ -528,17 +528,17 @@ var BookmarkPropertiesPanel = {
 
     if (this._loadInSidebar) {
       let annoObj = { name   : PlacesUIUtils.LOAD_IN_SIDEBAR_ANNO,
                       value  : true };
       let setLoadTxn = new PlacesSetItemAnnotationTransaction(-1, annoObj);
       childTransactions.push(setLoadTxn);
     }
 
-    //XXX TODO: this should be in a transaction!
+    // XXX TODO: this should be in a transaction!
     if (this._charSet && !PrivateBrowsingUtils.isWindowPrivate(window))
       PlacesUtils.setCharsetForURI(this._uri, this._charSet);
 
     let createTxn = new PlacesCreateBookmarkTransaction(this._uri,
                                                         aContainer,
                                                         aIndex,
                                                         this._title,
                                                         this._keyword,
--- a/browser/components/places/content/places.js
+++ b/browser/components/places/content/places.js
@@ -1297,17 +1297,17 @@ var ContentArea = {
    */
   setContentViewForQueryString:
   function CA_setContentViewForQueryString(aQueryString, aView, aOptions) {
     if (!aQueryString ||
         typeof aView != "object" && typeof aView != "function")
       throw new Error("Invalid arguments");
 
     this._specialViews.set(aQueryString, { view: aView,
-                                           options: aOptions || new Object() });
+                                           options: aOptions || {} });
   },
 
   get currentView() {
     return PlacesUIUtils.getViewForNode(this._deck.selectedPanel);
   },
   set currentView(aNewView) {
     let oldView = this.currentView;
     if (oldView != aNewView) {
--- a/browser/components/places/tests/browser/browser_bookmarksProperties.js
+++ b/browser/components/places/tests/browser/browser_bookmarksProperties.js
@@ -47,17 +47,17 @@ function add_bookmark(aURI) {
                                        "bookmark/" + aURI.spec);
   return bId;
 }
 
 // Each test is an obj w/ a desc property and run method.
 var gTests = [];
 var gCurrentTest = null;
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 // Bug 462662 - Pressing Enter to select tag from autocomplete closes bookmarks properties dialog
 gTests.push({
   desc: "Bug 462662 - Pressing Enter to select tag from autocomplete closes bookmarks properties dialog",
   sidebar: SIDEBAR_BOOKMARKS_ID,
   action: ACTION_EDIT,
   itemType: null,
   window: null,
   _itemId: null,
@@ -148,17 +148,17 @@ gTests.push({
     is(tags[0], "testTag", "Tag on node has not changed");
 
     // Cleanup.
     PlacesUtils.tagging.untagURI(PlacesUtils._uri(TEST_URL), ["testTag"]);
     PlacesUtils.bookmarks.removeItem(this._itemId);
   }
 });
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 // Bug 476020 - Pressing Esc while having the tag autocomplete open closes the bookmarks panel
 
 gTests.push({
   desc: "Bug 476020 - Pressing Esc while having the tag autocomplete open closes the bookmarks panel",
   sidebar: SIDEBAR_BOOKMARKS_ID,
   action: ACTION_EDIT,
   itemType: null,
   window: null,
@@ -249,17 +249,17 @@ gTests.push({
 
     // Cleanup.
     PlacesUtils.tagging.untagURI(PlacesUtils._uri(TEST_URL),
                                  ["testTag"]);
     PlacesUtils.bookmarks.removeItem(this._itemId);
   }
 });
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 //  Bug 491269 - Test that editing folder name in bookmarks properties dialog does not accept the dialog
 
 gTests.push({
   desc: " Bug 491269 - Test that editing folder name in bookmarks properties dialog does not accept the dialog",
   sidebar: SIDEBAR_HISTORY_ID,
   action: ACTION_ADD,
   historyView: SIDEBAR_HISTORY_BYLASTVISITED_VIEW,
   window: null,
@@ -320,17 +320,17 @@ gTests.push({
     runNextTest();
   },
 
   cleanup: function() {
     return PlacesTestUtils.clearHistory();
   }
 });
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 
 function test() {
   waitForExplicitFinish();
   // This test can take some time, if we timeout too early it could run
   // in the middle of other tests, or hang them.
   requestLongerTimeout(2);
 
   // Sanity checks.
--- a/browser/components/places/tests/browser/browser_drag_bookmarks_on_toolbar.js
+++ b/browser/components/places/tests/browser/browser_drag_bookmarks_on_toolbar.js
@@ -135,17 +135,17 @@ function getExpectedDataForPlacesNode(aN
     wrappedNode.push(wrappedFlavor);
   });
 
   return [wrappedNode];
 }
 
 var gTests = [
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 
   {
     desc: "Drag a folder on toolbar",
     run: function() {
       // Create a test folder to be dragged.
       var folderId = PlacesUtils.bookmarks
                                 .createFolder(PlacesUtils.toolbarFolderId,
                                               TEST_TITLE,
@@ -176,17 +176,17 @@ var gTests = [
                       nextTest();
                     });
                 });
             });
         });
     }
   },
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 
   {
     desc: "Drag a bookmark on toolbar",
     run: function() {
       // Create a test bookmark to be dragged.
       var itemId = PlacesUtils.bookmarks
                               .insertBookmark(PlacesUtils.toolbarFolderId,
                                               PlacesUtils._uri(TEST_URL),
--- a/browser/components/places/tests/browser/browser_library_batch_delete.js
+++ b/browser/components/places/tests/browser/browser_library_batch_delete.js
@@ -5,17 +5,17 @@
  *  Tests that Library handles correctly batch deletes.
  */
 
 const TEST_URL = "http://www.batch.delete.me/";
 
 var gTests = [];
 var gLibrary;
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 
 gTests.push({
   desc: "Create and batch remove bookmarks",
   run: function() {
     let testURI = makeURI(TEST_URL);
     PlacesUtils.history.runInBatchMode({
       runBatched: function (aUserData) {
         // Create a folder in unserted and populate it with bookmarks.
@@ -58,17 +58,17 @@ gTests.push({
     // Test live update.
     is(unsortedNode.childCount, 1, "Unsorted node has 1 child");
     is(PO._places.selectedNode.title, "keepme", "Folder node selected");
     unsortedNode.containerOpen = false;
     nextTest();
   }
 });
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 
 gTests.push({
   desc: "Ensure correct selection and functionality in Library",
   run: function() {
     let PO = gLibrary.PlacesOrganizer;
     let ContentTree = gLibrary.ContentTree;
     // Move selection forth and back.
     PO.selectLeftPaneQuery("History");
@@ -83,17 +83,17 @@ gTests.push({
                                          PlacesUtils.bookmarks.DEFAULT_INDEX,
                                          "bm");
     is(ContentTree.view.result.root.childCount, 2,
        "Right pane was correctly updated");
     nextTest();
   }
 });
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 
 function test() {
   waitForExplicitFinish();
   registerCleanupFunction(function () {
     PlacesUtils.bookmarks
                .removeFolderChildren(PlacesUtils.unfiledBookmarksFolderId);
   });
 
--- a/browser/components/places/tests/browser/browser_library_infoBox.js
+++ b/browser/components/places/tests/browser/browser_library_infoBox.js
@@ -7,17 +7,17 @@
  *  additionalInfoFields in infoBox section of library
  */
 
 const TEST_URI = "http://www.mozilla.org/";
 
 var gTests = [];
 var gLibrary;
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 
 gTests.push({
   desc: "Bug 430148 - Remove or hide the more/less button in details pane...",
   run: function() {
     var PO = gLibrary.PlacesOrganizer;
     let ContentTree = gLibrary.ContentTree;
     var infoBoxExpanderWrapper = getAndCheckElmtById("infoBoxExpanderWrapper");
 
@@ -160,17 +160,17 @@ function checkAddInfoFields(PO, nodeName
 }
 
 function getAndCheckElmtById(id) {
   var elmt = gLibrary.document.getElementById(id);
   isnot(elmt, null, "Correctly got element: #" + id);
   return elmt;
 }
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 
 function nextTest() {
   if (gTests.length) {
     var test = gTests.shift();
     ok(true, "TEST: " + test.desc);
     dump("TEST: " + test.desc + "\n");
     test.run();
   }
--- a/browser/components/places/tests/browser/browser_library_middleclick.js
+++ b/browser/components/places/tests/browser/browser_library_middleclick.js
@@ -63,17 +63,17 @@ var gTabsListener = {
 
         // Test finished.  This will move to the next one.
         waitForFocus(gCurrentTest.finish, gBrowser.ownerGlobal);
       });
     }
   }
 }
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 // Open bookmark in a new tab.
 
 gTests.push({
   desc: "Open bookmark in a new tab.",
   URIs: ["about:buildconfig"],
   _itemId: -1,
 
   setup: function() {
@@ -96,17 +96,17 @@ gTests.push({
     setTimeout(runNextTest, 0);
   },
 
   cleanup: function() {
     PlacesUtils.bookmarks.removeItem(this._itemId);
   }
 });
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 // Open a folder in tabs.
 
 gTests.push({
   desc: "Open a folder in tabs.",
   URIs: ["about:buildconfig", "about:"],
   _folderId: -1,
 
   setup: function() {
@@ -138,17 +138,17 @@ gTests.push({
     setTimeout(runNextTest, 0);
   },
 
   cleanup: function() {
     PlacesUtils.bookmarks.removeItem(this._folderId);
   }
 });
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 // Open a query in tabs.
 
 gTests.push({
   desc: "Open a query in tabs.",
   URIs: ["about:buildconfig", "about:"],
   _folderId: -1,
   _queryId: -1,
 
@@ -196,17 +196,17 @@ gTests.push({
   },
 
   cleanup: function() {
     PlacesUtils.bookmarks.removeItem(this._folderId);
     PlacesUtils.bookmarks.removeItem(this._queryId);
   }
 });
 
-//------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------
 
 function test() {
   waitForExplicitFinish();
   // Increase timeout, this test can be quite slow due to waitForFocus calls.
   requestLongerTimeout(2);
 
   // Sanity checks.
   ok(PlacesUtils, "PlacesUtils in context");
--- a/browser/components/places/tests/browser/browser_library_search.js
+++ b/browser/components/places/tests/browser/browser_library_search.js
@@ -42,17 +42,17 @@ var testCases = [
   },
 
   function downloadsScope() {
     let defScope = getDefaultScope(PlacesUIUtils.leftPaneQueries["Downloads"]);
     search(PlacesUIUtils.leftPaneQueries["Downloads"], "dummy", defScope);
   },
 ];
 
-///////////////////////////////////////////////////////////////////////////////
+// /////////////////////////////////////////////////////////////////////////////
 
 /**
  * Returns the default search scope for a given folder.
  *
  * @param  aFolderId
  *         the item ID of a node in the left pane's tree
  * @return the default scope when the folder is newly selected
  */
@@ -155,17 +155,17 @@ function onLibraryAvailable() {
   gLibrary = null;
 
   // Cleanup.
   PlacesUtils.tagging.untagURI(PlacesUtils._uri(TEST_URL), ["dummyTag"]);
   PlacesUtils.bookmarks.removeFolderChildren(PlacesUtils.unfiledBookmarksFolderId);
   PlacesTestUtils.clearHistory().then(finish);
 }
 
-///////////////////////////////////////////////////////////////////////////////
+// /////////////////////////////////////////////////////////////////////////////
 
 function test() {
   waitForExplicitFinish();
 
   // Sanity:
   ok(PlacesUtils, "PlacesUtils in context");
 
   // Add visits, a bookmark and a tag.
--- a/browser/components/places/tests/browser/browser_sort_in_library.js
+++ b/browser/components/places/tests/browser/browser_sort_in_library.js
@@ -49,17 +49,17 @@ const SORT_LOOKUP_TABLE = {
 // determines this value.
 const DEFAULT_SORT_KEY = "TITLE";
 
 // Part of the test is checking that sorts stick, so each time we sort we need
 // to remember it.
 var prevSortDir = null;
 var prevSortKey = null;
 
-///////////////////////////////////////////////////////////////////////////////
+// /////////////////////////////////////////////////////////////////////////////
 
 /**
  * Ensures that the sort of aTree is aSortingMode and aSortingAnno.
  *
  * @param aTree
  *        the tree to check
  * @param aSortingMode
  *        one of the Ci.nsINavHistoryQueryOptions.SORT_BY_* constants
@@ -225,17 +225,17 @@ function testSortByDir(aOrganizerWin, aP
     let key = (aUnsortFirst ? DEFAULT_SORT_KEY : prevSortKey);
     let sortConst = "SORT_BY_" + key + "_" + dir.toUpperCase();
     let expectedSortMode = Ci.nsINavHistoryQueryOptions[sortConst];
     setSort(aOrganizerWin, aPlaceContentTree, aUnsortFirst, false, null, dir);
     checkSort(aPlaceContentTree, expectedSortMode, "");
   });
 }
 
-///////////////////////////////////////////////////////////////////////////////
+// /////////////////////////////////////////////////////////////////////////////
 
 function test() {
   waitForExplicitFinish();
 
   openLibrary(function (win) {
         let tree = win.document.getElementById("placeContent");
         isnot(tree, null, "sanity check: placeContent tree should exist");
         // Run the tests.
--- a/browser/components/preferences/cookies.js
+++ b/browser/components/preferences/cookies.js
@@ -857,17 +857,17 @@ var gCookiesWindow = {
     return aCookie.rawHost.indexOf(this._view._filterValue) != -1 ||
            aCookie.name.indexOf(this._view._filterValue) != -1 ||
            aCookie.value.indexOf(this._view._filterValue) != -1;
   },
 
   _filterCookies: function (aFilterValue) {
     this._view._filterValue = aFilterValue;
     var cookies = [];
-    for (let i = 0; i < gCookiesWindow._hostOrder.length; ++i) { //var host in gCookiesWindow._hosts) {
+    for (let i = 0; i < gCookiesWindow._hostOrder.length; ++i) { // var host in gCookiesWindow._hosts) {
       let currHost = gCookiesWindow._hosts[gCookiesWindow._hostOrder[i]]; // gCookiesWindow._hosts[host];
       if (!currHost) continue;
       for (let cookie of currHost.cookies) {
         if (this._cookieMatchesFilter(cookie))
           cookies.push(cookie);
       }
     }
     return cookies;
--- a/browser/components/preferences/in-content/applications.js
+++ b/browser/components/preferences/in-content/applications.js
@@ -1,15 +1,15 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
  * You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 "use strict";
 
-//****************************************************************************//
+//* ***************************************************************************//
 // Constants & Enumeration Values
 
 Components.utils.import('resource://gre/modules/Services.jsm');
 Components.utils.import('resource://gre/modules/AppConstants.jsm');
 const TYPE_MAYBE_FEED = "application/vnd.mozilla.maybe.feed";
 const TYPE_MAYBE_VIDEO_FEED = "application/vnd.mozilla.maybe.video.feed";
 const TYPE_MAYBE_AUDIO_FEED = "application/vnd.mozilla.maybe.audio.feed";
 const TYPE_PDF = "application/pdf";
@@ -71,17 +71,17 @@ const kActionUsePlugin = 5;
 const ICON_URL_APP = AppConstants.platform == "linux" ?
                      "moz-icon://dummy.exe?size=16" :
                      "chrome://browser/skin/preferences/application.png";
 
 // For CSS. Can be one of "ask", "save", "plugin" or "feed". If absent, the icon URL
 // was set by us to a custom handler icon and CSS should not try to override it.
 const APP_ICON_ATTR_NAME = "appHandlerIcon";
 
-//****************************************************************************//
+//* ***************************************************************************//
 // Utilities
 
 function getFileDisplayName(file) {
   if (AppConstants.platform == "win") {
     if (file instanceof Ci.nsILocalFileWin) {
       try {
         return file.getVersionInfoField("FileDescription");
       } catch (e) {}
@@ -129,17 +129,17 @@ ArrayEnumerator.prototype = {
     return this._contents[this._index++];
   }
 };
 
 function isFeedType(t) {
   return t == TYPE_MAYBE_FEED || t == TYPE_MAYBE_VIDEO_FEED || t == TYPE_MAYBE_AUDIO_FEED;
 }
 
-//****************************************************************************//
+//* ***************************************************************************//
 // HandlerInfoWrapper
 
 /**
  * This object wraps nsIHandlerInfo with some additional functionality
  * the Applications prefpane needs to display and allow modification of
  * the list of handled types.
  *
  * We create an instance of this wrapper for each entry we might display
@@ -159,34 +159,34 @@ function HandlerInfoWrapper(aType, aHand
 
 HandlerInfoWrapper.prototype = {
   // The wrapped nsIHandlerInfo object.  In general, this object is private,
   // but there are a couple cases where callers access it directly for things
   // we haven't (yet?) implemented, so we make it a public property.
   wrappedHandlerInfo: null,
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Convenience Utils
 
   _handlerSvc: Cc["@mozilla.org/uriloader/handler-service;1"].
                getService(Ci.nsIHandlerService),
 
   _prefSvc: Cc["@mozilla.org/preferences-service;1"].
             getService(Ci.nsIPrefBranch),
 
   _categoryMgr: Cc["@mozilla.org/categorymanager;1"].
                 getService(Ci.nsICategoryManager),
 
   element: function(aID) {
     return document.getElementById(aID);
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // nsIHandlerInfo
 
   // The MIME type or protocol scheme.
   _type: null,
   get type() {
     return this._type;
   },
 
@@ -317,17 +317,17 @@ HandlerInfoWrapper.prototype = {
     return this.wrappedHandlerInfo.alwaysAskBeforeHandling;
   },
 
   set alwaysAskBeforeHandling(aNewValue) {
     this.wrappedHandlerInfo.alwaysAskBeforeHandling = aNewValue;
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // nsIMIMEInfo
 
   // The primary file extension associated with this type, if any.
   //
   // XXX Plugin objects contain an array of MimeType objects with "suffixes"
   // properties; if this object has an associated plugin, shouldn't we check
   // those properties for an extension?
   get primaryExtension() {
@@ -336,17 +336,17 @@ HandlerInfoWrapper.prototype = {
           this.wrappedHandlerInfo.primaryExtension)
         return this.wrappedHandlerInfo.primaryExtension
     } catch (ex) {}
 
     return null;
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Plugin Handling
 
   // A plugin that can handle this type, if any.
   //
   // Note: just because we have one doesn't mean it *will* handle the type.
   // That depends on whether or not the type is in the list of types for which
   // plugin handling is disabled.
   plugin: null,
@@ -412,25 +412,25 @@ HandlerInfoWrapper.prototype = {
       addCategoryEntry("Gecko-Content-Viewers",
                        this.type,
                        "@mozilla.org/content/plugin/document-loader-factory;1",
                        false,
                        true);
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Storage
 
   store: function() {
     this._handlerSvc.store(this.wrappedHandlerInfo);
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Icons
 
   get smallIcon() {
     return this._getIcon(16);
   },
 
   _getIcon: function(aSize) {
     if (this.primaryExtension)
@@ -442,17 +442,17 @@ HandlerInfoWrapper.prototype = {
     // FIXME: consider returning some generic icon when we can't get a URL for
     // one (for example in the case of protocol schemes).  Filed as bug 395141.
     return null;
   }
 
 };
 
 
-//****************************************************************************//
+//* ***************************************************************************//
 // Feed Handler Info
 
 /**
  * This object implements nsIHandlerInfo for the feed types.  It's a separate
  * object because we currently store handling information for the feed type
  * in a set of preferences rather than the nsIHandlerService-managed datastore.
  *
  * This object inherits from HandlerInfoWrapper in order to get functionality
@@ -466,26 +466,26 @@ HandlerInfoWrapper.prototype = {
 
 function FeedHandlerInfo(aMIMEType) {
   HandlerInfoWrapper.call(this, aMIMEType, null);
 }
 
 FeedHandlerInfo.prototype = {
   __proto__: HandlerInfoWrapper.prototype,
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Convenience Utils
 
   _converterSvc:
     Cc["@mozilla.org/embeddor.implemented/web-content-handler-registrar;1"].
     getService(Ci.nsIWebContentConverterService),
 
   _shellSvc: AppConstants.HAVE_SHELL_SERVICE ? getShellService() : null,
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // nsIHandlerInfo
 
   get description() {
     return this.element("bundlePreferences").getString(this._appPrefLabel);
   },
 
   get preferredApplicationHandler() {
     switch (this.element(this._prefSelectedReader).value) {
@@ -718,25 +718,25 @@ FeedHandlerInfo.prototype = {
   // We use this to suppress notification-triggered updates to the list when
   // we make changes that may spawn such updates, specifically when we change
   // the action for the feed type, which results in feed preference updates,
   // which spawn "pref changed" notifications that would otherwise cause us
   // to rebuild the view unnecessarily.
   _storingAction: false,
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // nsIMIMEInfo
 
   get primaryExtension() {
     return "xml";
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Storage
 
   // Changes to the preferred action and handler take effect immediately
   // (we write them out to the preferences right as they happen),
   // so we when the controller calls store() after modifying the handlers,
   // the only thing we need to store is the removal of possible handlers
   // XXX Should we hold off on making the changes until this method gets called?
   store: function() {
@@ -754,17 +754,17 @@ FeedHandlerInfo.prototype = {
         app.QueryInterface(Ci.nsIWebContentHandlerInfo);
         this._converterSvc.removeContentHandler(app.contentType, app.uri);
       }
     }
     this._possibleApplicationHandlers._removed = [];
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Icons
 
   get smallIcon() {
     return this._smallIcon;
   }
 
 };
 
@@ -834,17 +834,17 @@ var pdfHandlerInfo = {
   _handlerChanged: TOPIC_PDFJS_HANDLER_CHANGED,
   _appPrefLabel: "portableDocumentFormat",
   get enabled() {
     return !Services.prefs.getBoolPref(PREF_PDFJS_DISABLED);
   },
 };
 
 
-//****************************************************************************//
+//* ***************************************************************************//
 // Prefpane Controller
 
 var gApplicationsPane = {
   // The set of types the app knows how to handle.  A hash of HandlerInfoWrapper
   // objects, indexed by type.
   _handledTypes: {},
 
   // The list of types we can show, sorted by the sort column/direction.
@@ -858,17 +858,17 @@ var gApplicationsPane = {
 
   // A count of the number of times each visible type description appears.
   // We use these counts to determine whether or not to annotate descriptions
   // with their types to distinguish duplicate descriptions from each other.
   // A hash of integer counts, indexed by string description.
   _visibleTypeDescriptionCount: {},
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Convenience & Performance Shortcuts
 
   // These get defined by init().
   _brandShortName : null,
   _prefsBundle    : null,
   _list           : null,
   _filter         : null,
 
@@ -883,17 +883,17 @@ var gApplicationsPane = {
 
   _handlerSvc   : Cc["@mozilla.org/uriloader/handler-service;1"].
                   getService(Ci.nsIHandlerService),
 
   _ioSvc        : Cc["@mozilla.org/network/io-service;1"].
                   getService(Ci.nsIIOService),
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Initialization & Destruction
 
   init: function() {
     function setEventListener(aId, aEventType, aCallback)
     {
       document.getElementById(aId)
               .addEventListener(aEventType, aCallback.bind(gApplicationsPane));
     }
@@ -986,30 +986,30 @@ var gApplicationsPane = {
 
     this._prefSvc.removeObserver(PREF_AUDIO_FEED_SELECTED_APP, this);
     this._prefSvc.removeObserver(PREF_AUDIO_FEED_SELECTED_WEB, this);
     this._prefSvc.removeObserver(PREF_AUDIO_FEED_SELECTED_ACTION, this);
     this._prefSvc.removeObserver(PREF_AUDIO_FEED_SELECTED_READER, this);
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // nsISupports
 
   QueryInterface: function(aIID) {
     if (aIID.equals(Ci.nsIObserver) ||
         aIID.equals(Ci.nsIDOMEventListener ||
         aIID.equals(Ci.nsISupports)))
       return this;
 
     throw Cr.NS_ERROR_NO_INTERFACE;
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // nsIObserver
 
   observe: function (aSubject, aTopic, aData) {
     // Rebuild the list when there are changes to preferences that influence
     // whether or not to show certain entries in the list.
     if (aTopic == "nsPref:changed" && !this._storingAction) {
       // These two prefs alter the list of visible types, so we have to rebuild
       // that list when they change.
@@ -1021,27 +1021,27 @@ var gApplicationsPane = {
 
       // All the prefs we observe can affect what we display, so we rebuild
       // the view when any of them changes.
       this._rebuildView();
     }
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // nsIDOMEventListener
 
   handleEvent: function(aEvent) {
     if (aEvent.type == "unload") {
       this.destroy();
     }
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Composed Model Construction
 
   _loadData: function() {
     this._loadFeedHandler();
     this._loadInternalHandlers();
     this._loadPluginHandlers();
     this._loadApplicationHandlers();
   },
@@ -1126,17 +1126,17 @@ var gApplicationsPane = {
         this._handledTypes[type] = handlerInfoWrapper;
       }
 
       handlerInfoWrapper.handledOnlyByPlugin = false;
     }
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // View Construction
 
   _rebuildVisibleTypes: function() {
     // Reset the list of visible types and the visible type description counts.
     this._visibleTypes = [];
     this._visibleTypeDescriptionCount = {};
 
     // Get the preferences that help determine what types to show.
@@ -1550,17 +1550,17 @@ var gApplicationsPane = {
         break;
       case Ci.nsIHandlerInfo.saveToDisk:
         menu.selectedItem = saveMenuItem;
         break;
     }
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Sorting & Filtering
 
   _sortColumn: null,
 
   /**
    * Sort the list when the user clicks on a column header.
    */
   sort: function (event) {
@@ -1623,17 +1623,17 @@ var gApplicationsPane = {
   },
 
   focusFilterBox: function() {
     this._filter.focus();
     this._filter.select();
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Changes
 
   onSelectAction: function(aActionItem) {
     this._storingAction = true;
 
     try {
       this._storeAction(aActionItem);
     }
--- a/browser/components/preferences/in-content/subdialogs.js
+++ b/browser/components/preferences/in-content/subdialogs.js
@@ -54,17 +54,17 @@ var gSubDialog = {
       let args = Array.from(arguments);
       this._closingPromise.then(() => {
         this.open.apply(this, args);
       });
       return;
     }
     this._addDialogEventListeners();
 
-    let features = (!!aFeatures ? aFeatures + "," : "") + "resizable,dialog=no,centerscreen";
+    let features = (aFeatures ? aFeatures + "," : "") + "resizable,dialog=no,centerscreen";
     let dialog = window.openDialog(aURL, "dialogFrame", features, aParams);
     if (aClosingCallback) {
       this._closingCallback = aClosingCallback.bind(dialog);
     }
 
     this._closingEvent = null;
     this._isClosing = false;
     this._openedURL = aURL;
@@ -333,17 +333,17 @@ var gSubDialog = {
     if (aEvent.keyCode != aEvent.DOM_VK_TAB ||
         aEvent.ctrlKey || aEvent.altKey || aEvent.metaKey) {
       return;
     }
 
     let fm = Services.focus;
 
     function isLastFocusableElement(el) {
-      //XXXgijs unfortunately there is no way to get the last focusable element without asking
+      // XXXgijs unfortunately there is no way to get the last focusable element without asking
       // the focus manager to move focus to it.
       let rv = el == fm.moveFocus(gSubDialog._frame.contentWindow, null, fm.MOVEFOCUS_LAST, 0);
       fm.setFocus(el, 0);
       return rv;
     }
 
     let forward = !aEvent.shiftKey;
     // check if focus is leaving the frame (incl. the close button):
--- a/browser/components/preferences/in-content/sync.js
+++ b/browser/components/preferences/in-content/sync.js
@@ -115,17 +115,17 @@ var gSyncPane = {
                   "weave:service:start-over:finish",
                   "weave:service:setup-complete",
                   "weave:service:logout:finish",
                   FxAccountsCommon.ONVERIFIED_NOTIFICATION,
                   FxAccountsCommon.ONLOGIN_NOTIFICATION,
                   FxAccountsCommon.ON_PROFILE_CHANGE_NOTIFICATION,
                   ];
     // Add the observers now and remove them on unload
-    //XXXzpao This should use Services.obs.* but Weave's Obs does nice handling
+    // XXXzpao This should use Services.obs.* but Weave's Obs does nice handling
     //        of `this`. Fix in a followup. (bug 583347)
     topics.forEach(function (topic) {
       Weave.Svc.Obs.add(topic, this.updateWeavePrefs, this);
     }, this);
 
     window.addEventListener("unload", function() {
       topics.forEach(function (topic) {
         Weave.Svc.Obs.remove(topic, this.updateWeavePrefs, this);
--- a/browser/components/search/test/browser_426329.js
+++ b/browser/components/search/test/browser_426329.js
@@ -148,17 +148,17 @@ add_task(function* testAltReturn() {
   yield BrowserTestUtils.openNewForegroundTab(gBrowser, () => {
     EventUtils.synthesizeKey("VK_RETURN", { altKey: true });
   });
 
   is(gBrowser.tabs.length, preTabNo + 1, "Alt+Return key added new tab");
   is(gBrowser.currentURI.spec, expectedURL(searchBar.value), "testAltReturn opened correct search page");
 });
 
-//Shift key has no effect for now, so skip it
+// Shift key has no effect for now, so skip it
 add_task(function* testShiftAltReturn() {
   return;
 
   yield* prepareTest();
 
   let url = expectedURL(searchBar.value);
 
   let newTabPromise = BrowserTestUtils.waitForNewTab(gBrowser, url);
--- a/browser/components/search/test/browser_searchbar_openpopup.js
+++ b/browser/components/search/test/browser_searchbar_openpopup.js
@@ -276,17 +276,17 @@ add_task(function* contextmenu_closes_po
   isnot(searchPopup.getAttribute("showonlysettings"), "true", "Should show the full popup");
 
   is(Services.focus.focusedElement, textbox.inputField, "Should have focused the search bar");
   is(textbox.selectionStart, 0, "Should have selected all of the text");
   is(textbox.selectionEnd, 3, "Should have selected all of the text");
 
   promise = promiseEvent(searchPopup, "popuphidden");
 
-  //synthesizeKey does not work with VK_CONTEXT_MENU (bug 1127368)
+  // synthesizeKey does not work with VK_CONTEXT_MENU (bug 1127368)
   EventUtils.synthesizeMouseAtCenter(textbox, { type: "contextmenu", button: null });
 
   yield promise;
 
   let contextPopup =
     document.getAnonymousElementByAttribute(textbox.inputField.parentNode,
                                             "anonid", "input-box-contextmenu");
   promise = promiseEvent(contextPopup, "popuphidden");
--- a/browser/components/search/test/head.js
+++ b/browser/components/search/test/head.js
@@ -50,17 +50,17 @@ function promiseEvent(aTarget, aEventNam
     return true;
   }
 
   return BrowserTestUtils.waitForEvent(aTarget, aEventName, false, cancelEvent);
 }
 
 function promiseNewEngine(basename, options = {}) {
   return new Promise((resolve, reject) => {
-    //Default the setAsCurrent option to true.
+    // Default the setAsCurrent option to true.
     let setAsCurrent =
       options.setAsCurrent == undefined ? true : options.setAsCurrent;
     info("Waiting for engine to be added: " + basename);
     Services.search.init({
       onInitComplete: function() {
         let url = getRootDirectory(gTestPath) + basename;
         let current = Services.search.currentEngine;
         Services.search.addEngine(url, null, options.iconURL || "", false, {
--- a/browser/components/translation/test/unit/test_cld2.js
+++ b/browser/components/translation/test/unit/test_cld2.js
@@ -33,43 +33,39 @@ const kTeststr_am_Ethi = " ለመጠይቅ ወደ እስክንድርያ ላኩዋቸውና የእስክንድርያ ጳጳስ አቴናስዮስ ፍሬምንጦስን እራሳቸውን ሾመው ልከዋል ከዚያ እስከ ዓ ም ድረስ የኢትዮጵያ አቡነ";
 const kTeststr_ar_Arab = "احتيالية بيع أي حساب";
 const kTeststr_as_Beng = "অঞ্চল নতুন সদস্যবৃন্দ সকলোৱে ভৰ্তি হব পাৰে মুল পৃষ্ঠা জন লেখক গুগ ল দল সাৰাংশ ই পত্ৰ টা বাৰ্তা এজন";
 const kTeststr_ay_Latn = " aru wijar aru ispañula ukaran aru witanam aru kurti aru kalis aru warani aru malta aru yatiyawi niya jakitanaka isluwiñ aru lmir phuran aru masirunan aru purtukal aru kruwat aru jakira urtu aru inklisa pirsan aru suyku aru malay aru jisk aptayma thaya";
 const kTeststr_az_Arab = " آذربایجان دا انسان حاقلاری ائوی آچیلاجاق ب م ت ائلچيسي برمه موخاليفتي نين ليدئري ايله گؤروشه بيليب ترس شوونيسم فارس از آزادي ملتهاي تورکمن";
 const kTeststr_az_Latn = " a az qalıb breyn rinq intellektual oyunu üzrə yarışın zona mərhələləri keçirilib miq un qalıqlarının dənizdən çıxarılması davam edir məhəmməd peyğəmbərin karikaturalarını çap edən qəzetin baş redaktoru iş otağında ölüb";
 const kTeststr_ba_Cyrl = " арналђан бындай ђилми эш тіркињлњ тњјге тапєыр нњшер ителњ ғинуар бєхет именлектє етешлектє ауыл ўќмерџєре хеџмєт юлын ћайлаѓанда";
 const kTeststr_be_Cyrl = " а друкаваць іх не было тэхнічна магчыма бліжэй за вільню тым самым часам нямецкае кіраўніцтва прапаноўвала апроч ўвядзення лацінкі яе";
 const kTeststr_bg_Cyrl = " а дума попада в състояние на изпитание ключовите думи с предсказана малко под то изискване на страниците за търсене в";
-//const kTeststr_bh_Deva = " विकिपीडिया इंटरनेट आधारित एक मुक्त ज्ञानकोष परियोजना ह ई विकि के रुप मेँ बा यानी एगो अईसन जाल पृष्ठ जे सभन के संपादन करे के छूट देवेला विकिपीडिया शब्द विकि अउर इनसाइक्लोपीडिया ज्ञानकोष शब्दन के मिला के बनल बा विकिपीडिया एक बहुभाषीय प्रकल्प ह अउर स्वयंसेवकन के सहकार से निर्मित बा जेहु के भी इंटरनेट तक पहुँच बा ऊ विकिपीडिया पर लिख सकत बा अउर लेखन के संपादन कर सकत बा";
 // From 10% testing part of new lang=bh scrape
 const kTeststr_bh_Deva = "काल में उनका हमला से बचे खाती एहिजा भाग के अइले आ भोजपुर नाम से नगर बसवले. एकरा बारे में विस्तार से जानकारी नीचे दीहल गइल बा. बाकिर आश्चर्यजनक रूप से मालवा के राजा भोज के बिहार आवे आ भोजपुर नगर बसावे आ चाहे भोजपुरी के साथे उनकर कवनो संबंध होखे के कवनो जानकारी भोपाल के भोज संस्थान आ चाहे मध्य प्रदेश के इतिहासकार लोगन के तनिको नइखे. हालांकि ऊ सब लोग एह बात के मानत बा कि एकरा बारे में अबहीं तकले मूर्ति बनवइलें. राजा भोज के जवना जगहा पऽ वाग्देवी के दर्शन भइल रहे, ओही स्थान पऽ एह मूर्ति के स्थापना कइल गइल. अब अगर एह मंदिर के एह शिलालेख के तस्वीर (पृष्ठ संख्या 33 पऽ प्रकाशित) रउआ धेयान से देखीं तऽ एकरा पऽ कैथी लिपि में -सीताराम- लिखल साफ लउकत बा. कैथी भोजपुरी के बहुत प्रचलित लिपि रहल बिया. एकरा बारे में कवनो शंका संदेह बिहार-यूपी के जानकार लोगन में नइखे. एल. एस. एस. वो माले के लिखल पढ़ीं ";
 
 const kTeststr_bi_Latn = " king wantaem nomo hem i sakem setan mo ol rabis enjel blong hem oli aot long heven oli kamdaon long wol taswe ol samting oli kam nogud olgeta long wol ya stat long revelesen ol faet kakae i sot ol sik mo fasin blong brekem loa oli kam antap olgeta samting";
 const kTeststr_blu_Latn = " Kuv hlub koj txawm lub ntuj yuav si ntshi nphaus los kuv tsis ua siab nkaug txawm ntiab teb yuav si ntshi nphaus los kuv tseem ua lon tsaug vim kuv hlub koj tag lub siab";
 const kTeststr_blu_Latn2 = "Kuv hnov Txhiaj Xeeb Vaj, co-owner of Hmong Village Shopping Center, hais ua hnub ua hmo tias kom Hmoob yuav tsum txhawb Hmoob thiab listed cov mini-shops uas nyob rau hauv nws lub MALL txhua txhua kom sawv daws mus txhawb, tiam sis uas cas zaum twg twb pom nws mus kav kiav hauv taj laj qhabmeem (Sun Foods) xwb tiag. Nag hmo kuv pom nws mus shopping nrog nws poj niam hauv Sun Foods. Thaum tawm mus txog nraum parking lot kuv thiaj txhob txwm mus ze ze seb ua li nws mus yuav dab tsi tiag, thiab seb tej uas nws yuav ntawd puas muaj nyob ntawm tej kiab khw Hmoob. Surprised!!! Vuag.... txhua yam nws yuav hauv Sun Foods peb Hmoob cov khw yeej muaj tag nrho. Peb niaj hnub nqua hu kom Hmoob yuav tsum pab Hmoob yog pab li no lod?";
-//const kTeststr_bn_Beng = " ংখ্যা নমুনায়ন বিন্যাস পরিসংখ্যানিক মডেল পরিসংখ্যানিক সিদ্ধান্ত ফাংশন পরিসংখ্যানিক";
 // From 10% testing part of new lang=bn scrape
 const kTeststr_bn_Beng = "গ্যালারির ৩৮ বছর পূর্তিতে মূল্যছাড় অর্থনীতি বিএনপির ওয়াক আউট তপন চৌধুরী হারবাল অ্যাসোসিয়েশনের সভাপতি আন্তর্জাতিক পরামর্শক বোর্ড দিয়ে শরিয়াহ্ ইনন্ডেক্স করবে সিএসই মালিকপক্ষের কান্না, শ্রমিকের অনিশ্চয়তা মতিঝিলে সমাবেশ নিষিদ্ধ: এফবিসিসিআইয়ের ধন্যবাদ বিনোদন বিশেষ প্রতিবেদন বাংলালিংকের গ্র্যান্ডমাস্টার সিজন-৩ ব্রাজিলে বিশ্বকাপ ফুটবল আয়োজনবিরোধী বিক্ষোভ দেশের নিরাপত্তার  চেয়ে অনেক বেশি সচেতন । প্রার্থীদের দক্ষতা  ও যোগ্যতার পাশাপাশি তারা জাতীয় ইস্যুগুলোতে প্রাধান্য দিয়েছেন । ” পাঁচটি সিটিতে ২০ লাখ ভোটারদের দিয়ে জাতীয় নির্বাচনে ৮ কোটি ভোটারদের সঙ্গে তুলনা করা যাবে কি একজন দর্শকের এমন প্রশ্নে জবাবে আব্দুল্লাহ আল নোমান বলেন , “ এই পাঁচটি সিটি কর্পোরেশন নির্বাচন দেশের পাঁচটি বড় বিভাগের প্রতিনিধিত্ব করছে । এছাড়া এখানকার ভোটার রা সবাই সচেতন । তারা";
 
-//const kTeststr_bo_Tibt = " གང ནི ཀུན ལ སྦྱར པ དང ཅན ལྡན བདག པོའི སྒྲ ག ད བ ས ན མ པ ང འ ར ལ མཐའ མེད པ བདག པོའི སྒྲ ལ པ ཉིད དོ མ མི མིན";
 // From 10% testing part of new lang=bo scrape
 const kTeststr_bo_Tibt = " ་གྱིས་ཁ་ཆེའི་ཕྱག་འཚལ་ཁང་ཞིག་བཤིག་སྲིད་པ། ཡར་ཀླུང་གཙང་པོར་ཆ ུ་མཛོང་བརྒྱག་རྒྱུའི་ལས་འཆར་ལ་རྒྱ་གར་གྱི་སེམས་ཚབས། རྒྱ་གརགྱི་མཚོ་འོག་དམག་གྲུར་སྦར་གས་བྱུང་བ། པ་ཀི་སི་ཏན་གྱིས་རྒྱ་གར་ལ་མི་སེར་བསད་པའི་སྐྱོན་འཛུགས་བྱས་པ། རྩོམ་ཡིག་མང་བ། འབྲེལ་མཐུད་བརྒྱུད་ལམ། ཐོན་སྐྱེད་དང་སྲི་ཞུ། ་ཐོག་དེབ་བཞི་ དཔར་འགྲེམས་གནང་ཡོད་པ་དང་བོད་ཡིག་དྲ་ཚིགས་ཁག་ནང་ལ་ཡང་རྩོམ་ཡང་ཡང་བྲིས་གནང་མཁན་རེད། ལེ་ཚན་ཁག ལེ་ཚན་ཁག འབྲེལ་ཡོད། འགྲེམ་སྟོན། རྒྱུད་ལམ་སྣ་མང་ཡིག་མཛོད། བཀོལ་སྤྱོད་པའི་འཇོག་ཡུལ་དྲ་ངོས། སྔོན་མ། རྗེས་མ། བསྟན་འཛིན་བདེ་སྐྱིད། ཚེ་རིང་རྣམ་རྒྱལ། བསྟན་འཛིན་ངག་དབང་། ཡོལ་གདོང་ཚེ་རིང་ལྷག་པ།  ་དབང་ ཕྱུག་གཉིས་ཀྱིས་བརྗོད་གཞི་བྱེ་བྲག་པ་ཞིག་ལ་བགྲོ་གླེང་གཏིང་ཟབ་བྱེད་པའི་གཟའ་ འཁོར་གཉིས་རེའི་མཚམས་ཀྱི་ལེ་ཚན་ཞིག་ཡིན། དཔྱད་ཞིབ་ཀྱིས་རྒྱ་ནག་ནང་ཁུལ་གྱི་འགྱུར་ལྡོག་དང༌། རྒྱ་ནག་དང་རྒྱལ་སྤྱིའི་འབྲེལ་བར་དམིགས་སུ་བཀར་ནས་བགྲོ་གླེང་བྱེད་ཀྱི་ཡོད།། རྒྱང་སྲིང་དུས་ཚོད།";
 
 const kTeststr_br_Latn = " a chom met leuskel a ra e blas da jack irons dilabour hag aet kuit eus what is this dibab a reont da c houde michael beinhorn evit produiñ an trede pladenn kavet e vez ar ganaouennoù buhan ha buhan ganto setu stummet ar bladenn adkavet e vez enni funk";
 const kTeststr_bs_Cyrl = "историја босне књ историја босне књ историја босне књ историја босне књ ";
-//const kTeststr_bs_Latn = " a radi bržeg rada pošto rom radi sporije nego ram izvorni rom se isključuje a dio ram a se rezerviše te se u njega ne ploča procesor ram memorija grafička kartica zvučna kartica modem mrežna kartica napojna jedinica uređaji za pohranjivanje";
 // From 10% testing part of new lang=bs scrape
 const kTeststr_bs_Latn = "Novi predsjednik Mešihata Islamske zajednice u Srbiji (IZuS) i muftija dr. Mevlud ef. Dudić izjavio je u intervjuu za Anadolu Agency (AA) kako je uvjeren da će doći do vraćanja jedinstva među muslimanima i unutar Islamske zajednice na prostoru Sandžaka, te da je njegova ruka pružena za povratak svih u okrilje Islamske zajednice u Srbiji nakon skoro sedam godina podjela u tom dijelu Srbije. Dudić je za predsjednika Mešihata IZ u Srbiji izabran 4. januara, a zvanična inauguracija će biti obavljena u prvoj polovini februara. Kako se očekuje, prisustvovat će joj i reisu-l-ulema Islamske zajednice u Srbiji Husein ef. Kavazović koji će i zvanično promovirati Dudića u novog prvog čovjeka IZ u Srbiji. Dudić će danas boraviti u prvoj zvaničnoj posjeti reisu Kavazoviću, što je njegov privi simbolični potez nakon imenovanja. ";
 
 const kTeststr_ca_Latn = "al final en un únic lloc nhorabona l correu electrònic està concebut com a eina de productivitat aleshores per què perdre el temps arxivant missatges per després intentar recordar on els veu desar i per què heu d eliminar missatges importants per l";
 const kTeststr_ceb_Latn = "Ang Sugbo usa sa mga labing ugmad nga lalawigan sa nasod. Kini ang sentro sa komersyo, edukasyon ug industriya sa sentral ug habagatang dapit sa kapupod-an. Ang mipadayag sa Sugbo isip ikapito nga labing nindot nga pulo sa , ang nag-inusarang pulo sa Pilipinas nga napasidunggan sa maong magasin sukad pa sa tuig";
 const kTeststr_ceb_Latn2 = "Ang mga komyun sa Pransiya duol-duol sa inkorporadong mga lungsod ug mga dakbayan sa Estados Unidos. Wala kini susamang istruktura sa Hiniusang Gingharian (UK) tungod kay ang estado niini taliwala sa di-metropolitan nga distrito ug sa sibil nga parokya. Wala usab kini susamang istruktura sa Pilipinas.";
 const kTeststr_chr_Cher = "ᎠᎢᏍᎩ ᎠᏟᎶᏍᏗ ᏥᏄᏍᏛᎩ ᎦᎫᏍᏛᏅᎯ ᎾᎥᎢ";
 const kTeststr_co_Latn = " a prupusitu di risultati for utilizà a scatula per ricercà ind issi risultati servore errore u servore ha incuntratu una errore pruvisoria é ùn ha pussutu compie a vostra dumanda per piacè acimenta dinò ind una minuta tuttu listessu ligami truvà i";
-const  kTeststr_crs_Latn = "Sesel ou menm nou sel patri. Kot nou viv dan larmoni. Lazwa, lanmour ek lape. Nou remersye Bondye. Preserv labote nou pei. Larises nou losean. En leritaz byen presye. Pour boner nou zanfan. Reste touzour dan linite. Fer monte nou paviyon. Ansanm pou tou leternite. Koste Seselwa!";
+const kTeststr_crs_Latn = "Sesel ou menm nou sel patri. Kot nou viv dan larmoni. Lazwa, lanmour ek lape. Nou remersye Bondye. Preserv labote nou pei. Larises nou losean. En leritaz byen presye. Pour boner nou zanfan. Reste touzour dan linite. Fer monte nou paviyon. Ansanm pou tou leternite. Koste Seselwa!";
 const kTeststr_cs_Latn = " a akci opakujte film uložen vykreslit gmail tokio smazat obsah adresáře nelze načíst systémový profil jednotky smoot okud používáte pro určení polokoule značky z západ nebo v východ používejte nezáporné hodnoty zeměpisné délky nelze";
 const kTeststr_cy_Latn = " a chofrestru eich cyfrif ymwelwch a unwaith i chi greu eich cyfrif mi fydd yn cael ei hysbysu o ch cyfeiriad ebost newydd fel eich bod yn gallu cadw mewn cysylltiad drwy gmail os nad ydych chi wedi clywed yn barod am gmail mae n gwasanaeth gwebost";
 const kTeststr_da_Latn = " a z tallene og punktummer der er tilladte log ud angiv den ønskede adgangskode igen november gem personlige oplysninger kontrolspørgsmål det sidste tegn i dit brugernavn skal være et bogstav a z eller tal skriv de tegn du kan se i billedet nedenfor";
 const kTeststr_de_Latn = " abschnitt ordner aktivieren werden die ordnereinstellungen im farbabschnitt deaktiviert öchten sie wirklich fortfahren eldtypen angeben optional n diesem schritt geben sie für jedesfeld aus dem datenset den typ an ieser schritt ist optional eldtypen";
 const kTeststr_dv_Thaa = " ހިންދީ ބަހުން ވާހަކަ ދައްކާއިރު ދެވަނަ ބަހެއްގެ ގޮތުގައާއި އެނޫން ގޮތްގޮތުން ހިންދީ ބަހުން ވާހަކަ ދައްކާ މީހުންގެ އަދަދު މިލިއަނަށް";
 const kTeststr_dz_Tibt = " རྩིས བརྐྱབ ཚུལ ལྡན དང ངེས བདེན སྦ སྟོན ནིའི དོན ལུ ཁྱོད གུག ཤད ལག ལེན འཐབ དགོ ག དང ཨིན པུཊི གྲལ ཐིག གུ";
 const kTeststr_ee_Latn = "Yi (Di tanya sia) tatia akɔ wò ayi axa yeye dzi kple tanya si sɔ kple esi wòŋlɔ ɖe goa me, negbe axaa ɖe li kpakple tanya mawo xoxo ko. Teƒe le axa yeye sia dzi si wòateŋu atia na kpekpeɖeŋu kple nuwoŋlɔŋlɔ ne anɔ hahiãm na wò. Mehiã be na gbugbɔ ava afii na axa yeye gɔmedzedze o. Woateŋu adze wo gɔme kple nuŋɔŋlɔ dzẽwo tatia. Megavɔ̃ na nuyeyewo gɔmedzedze kroa o.";
 const kTeststr_el_Grek = " ή αρνητική αναζήτηση λέξης κλειδιού καταστήστε τις μεμονωμένες λέξεις κλειδιά περισσότερο στοχοθετημένες με τη μετατροπή τους σε";
@@ -94,23 +90,21 @@ const kTeststr_gv_Latn = " and not ripe 
 const kTeststr_ha_Latn = " a cikin a kan sakamako daga sakwannin a kan sakamako daga sakwannin daga ranar zuwa a kan sakamako daga guda daga ranar zuwa a kan sakamako daga shafukan daga ranar zuwa a kan sakamako daga guda a cikin last hour a kan sakamako daga guda daga kafar";
 const kTeststr_haw_Latn = "He puke noiʻi kūʻikena kūnoa ʻo Wikipikia. E ʻoluʻolu nō, e hāʻawi mai i kāu ʻike, kāu manaʻo, a me kou leo no ke kūkulu ʻana a me ke kākoʻo ʻana mai i ka Wikipikia Hawaiʻi. He kahua pūnaewele Hawaiʻi kēia no ka hoʻoulu ʻana i ka ʻike Hawaiʻi. Inā hiki iā ʻoe ke ʻōlelo Hawaiʻi, e ʻoluʻolu nō, e kōkua mai a e hoʻololi i nā ʻatikala ma ʻaneʻi, a pono e haʻi aku i kou mau hoa aloha e pili ana i ka Wikipikia Hawaiʻi. E ola mau nō ka ʻōlelo Hawaiʻi a mau loa aku.";
 const kTeststr_hi_Deva = " ं ऐडवर्ड्स विज्ञापनों के अनुभव पर आधारित हैं और इनकी मदद से आपको अपने विज्ञापनों का अधिकतम लाभ";
 const kTeststr_hr_Latn = "Posljednja dva vladara su Kijaksar (Κυαξαρης; 625-585 prije Krista), fraortov sin koji će proširiti teritorij Medije i Astijag. Kijaksar je imao kćer ili unuku koja se zvala Amitis a postala je ženom Nabukodonosora II. kojoj je ovaj izgradio Viseće vrtove Babilona. Kijaksar je modernizirao svoju vojsku i uništio Ninivu 612. prije Krista. Naslijedio ga je njegov sin, posljednji medijski kralj, Astijag, kojega je detronizirao (srušio sa vlasti) njegov unuk Kir Veliki. Zemljom su zavladali Perzijanci.";
 const kTeststr_ht_Latn = " ak pitit tout sosyete a chita se pou sa leta dwe pwoteje yo nimewo leta fèt pou li pwoteje tout paran ak pitit nan peyi a menm jan kit paran yo marye kit yo pa marye tout manman ki fè pitit leta fèt pou ba yo konkoul menm jan tou pou timoun piti ak pou";
 const kTeststr_hu_Latn = " a felhasználóim a google azonosító szöveget ikor látják a felhasználóim a google azonosító szöveget felhasználók a google azonosító szöveget fogják látni minden tranzakció után ha a vásárlását regisztrációját oldalunk";
 const kTeststr_hy_Armn = " ա յ եվ նա հիացած աչքերով նայում է հինգհարկանի շենքի տարօրինակ փոքրիկ քառակուսի պատուհաններին դեռ մենք շատ ենք հետամնաց ասում է նա այսպես է";
 const kTeststr_ia_Latn = " super le sitos que tu visita isto es necessari pro render disponibile alcun functionalitates del barra de utensiles a fin que nos pote monstrar informationes ulterior super un sito le barra de utensiles debe dicer a nos le";
-//const kTeststr_id_Latn = "Geng: Pengembaraan Bermula adalah film animasi 3D CGI pertama yang diproduksi di Malaysia. Film ini dibuat oleh Les' Copaque Production (LCP) dan dirilis di bioskop-bioskop seluruh Malaysia pada 12 Februari 2009. Film Geng pertama kali diluncurkan dalam sebuah acara peluncuran pada 11 September 2007 bersama dengan serial animasi pendek Upin & Ipin yang berhubungan dengan film tersebut. Pembuatan film ini didukung oleh berbagai pihak seperti Kementerian Sains, Teknologi dan Inovasi Malaysia (MOSTI) dengan memberi bantuan berupa dana sebesar RM1 juta.";
 // From 10% testing part of new lang=id scrape
 const kTeststr_id_Latn = "berdiri setelah pengurusnya yang berusia 83 tahun, Fayzrahman Satarov, mendeklarasikan diri sebagai nabi dan rumahnya sebagai negara Islam Satarov digambarkan sebagai mantan ulama Islam  tahun 1970-an. Pengikutnya didorong membaca manuskripnya dan kebanyakan dilarang meninggalkan tempat persembunyian bawah tanah di dasar gedung delapan lantai mereka. Jaksa membuka penyelidikan kasus kriminal pada kelompok itu dan menyatakan akan membubarkan kelompok kalau tetap melakukan kegiatan ilegal seperti mencegah anggotanya mencari bantuan medis atau pendidikan. Sampai sekarang pihak berwajib belum melakukan penangkapan meskipun polisi mencurigai adanya tindak kekerasan pada anak. Pengadilan selanjutnya akan memutuskan apakah anak-anak diizinkan tetap tinggal dengan orang tua mereka. Kazan yang berada sekitar 800 kilometer di timur Moskow merupakan wilayah Tatarstan yang";
 
 const kTeststr_ie_Latn = " abhorre exceptiones in li derivation plu cardinal por un l i es li regularità del flexion conjugation ples comparar latino sine flexione e li antiqui projectes naturalistic queles have quasi null regules de derivation ma si on nu examina li enunciationes";
 const kTeststr_ig_Latn = "Chineke bụ aha ọzọ ndï omenala Igbo kpọro Chukwu. Mgbe ndị bekee bịara, ha mee ya nke ndi Christian. N'echiche ndi ekpere chi Omenala Ndi Igbo, Christianity, Judaism, ma Islam, Chineke nwere ọtụtụ utu aha, ma nwee nanị otu aha. Ụzọ abụọ e si akpọ aha ahụ bụ Jehovah ma Ọ bụ Yahweh. Na ọtụtụ Akwụkwọ Nsọ, e wepụla aha Chineke ma jiri utu aha bụ Onyenwe Anyị ma ọ bụ Chineke dochie ya. Ma mgbe e dere akwụkwọ nsọ, aha ahụ bụ Jehova pụtara n’ime ya, ihe dị ka ugboro pụkụ asaa(7,000).";
-//const kTeststr_ik_Latn = " kuubuuraqabniqsuq ataruamik colville mi aasii tavrani siku kilaabman sulukpaukkat makua niksisugrufagivut tavrani sunaimña atifa quaqqat ii quaqqat aasii ukiabmagu utiqhuta tamaufa utqiabvifñun aasiiñ tatpaaffaqapta tuvaaqatinifarufa aasiiñ";
 // From 10% testing part of new lang=ik scrape
 const kTeststr_ik_Latn = "sabvaqjuktuq sabvaba atiqaqpa atiqaqpa ibiq iebiq ixafich niuqtulgiññatif uvani natural gas tatpikka ufasiksigiruaq maaffa savaannafarufa mi tatkivani navy qanuqjugugguuq taaptuma inna uqsrunik ivaqjiqhutik       taktuk allualiuqtuq sigukun nanuq puuvraatuq taktuum amugaa kalumnitigun nanuq agliruq allualiuqtuq";
 
 const kTeststr_is_Latn = " a afköst leitarorða þinna leitarorð neikvæð leitarorð auglýsingahópa byggja upp aðallista yfir ný leitarorð fyrir auglýsingahópana og skoða ítarleg gögn um árangur leitarorða eins og samkeppni auglýsenda og leitarmagn er krafist notkun";
 const kTeststr_it_Latn = " a causa di un intervento di manutenzione del sistema fino alle ore circa ora legale costa del pacifico del novembre le campagne esistenti continueranno a essere pubblicate come di consueto anche durante questo breve periodo di inattività ci scusiamo per";
 const kTeststr_iu_Cans = "ᐃᑯᒪᒻᒪᑦ ᕿᓈᖏᓐᓇᓲᖑᒻᒪᑦ ᑎᑎᖅᑕᓕᒫᖅᓃᕕᑦ ᑎᑦᕆᐊᑐᓐᖏᑦᑕᑎᑦ ᑎᑎᖅᑕᑉᐱᑦ ᓯᕗᓂᖓᓂ ᑎᑎᖅᖃᖅ ᑎᑎᕆᐊᑐᓐᖏᑕᐃᑦ ᕿᓂᓲᖑᔪᒍᑦ ᑎᑎᖅᑕᓕᒫᖅᓃᕕᑦ";
 const kTeststr_he_Hebr = " או לערוך את העדפות ההפצה אנא עקוב אחרי השלבים הבאים כנס לחשבון האישי שלך ב";
 const kTeststr_ja_Hani = " このペ ジでは アカウントに指定された予算の履歴を一覧にしています それぞれの項目には 予算額と特定期間のステ タスが表示されます 現在または今後の予算を設定するには";
@@ -119,17 +113,16 @@ const kTeststr_ka_Geor = " ა ბირთვიდან მიღებული ელემენტი მენდელეევის პერიოდულ სიტემაში გადაინაცვლებს ორი უჯრით";
 const kTeststr_kha_Latn = " kaba jem jai sa sngap thuh ia ki bynta ba sharum naka sohbuin jong phi nangta sa pynhiar ia ka kti kadiang jong phi sha ka krung jong phi bad da kaba pyndonkam kumjuh ia ki shympriahti jong phi sa sngap thuh shapoh ka tohtit jong phi pyndonkam ia kajuh ka";
 const kTeststr_kk_Arab = " ﺎ ﻗﻴﺎﻧﺎﺕ ﺑﻮﻟﻤﺎﻳﺪﻯ ﺑﯘﻝ ﭘﺮﻭﺗﺴﻪﺳﯩﻦ ﻳﺎﻋﻨﻲ ﻗﺎﻻ ﻭﻣﯩﺮﯨﻨﺪﻩ ﻗﺎﺯﺍﻕ ء ﺗﯩﻠﯩﻨﯩﯔ ﻗﻮﻟﺪﺍﻧﯩﻠﻤﺎﯞﻯ ﻗﺎﺯﺍﻕ ﺟﻪﺭﯨﻨﺪﻩ";
 const kTeststr_kk_Cyrl = " а билердің өзіне рұқсат берілмеген егер халық талап етсе ғана хан келісім берген өздеріңіз білесіздер қр қыл мыс тық кодексінде жазаның";
 const kTeststr_kk_Latn = " bolsa da otanyna qaityp keledi al oralmandar basqa elderde diasporasy ote az bolghandyqtan bir birine komektesip bauyrmal bolady birde men poezben oralmandardyng qazaqstangha keluin kordim monghol qazaqtary poezdan tuse sala jerdi suip jylap keletin biraq";
 const kTeststr_kl_Latn = " at nittartakkalli uani toqqarsimasatta akornanni nittartakkanut allanut ingerlaqqittoqarsinnaavoq kanukoka tassaavoq kommuneqarfiit kattuffiat nuna tamakkerlugu kommunit nittartagaannut ingerlaqqiffiusinnaasoq kisitsiserpassuit nunatsinnut tunngasut";
 const kTeststr_km_Khmr = " ក ខ គ ឃ ង ច ឆ ជ ឈ ញ ដ ឋ ឌ ឍ ណ ត ថ ទ ធ ន ប ផ ព ភ ម យ រ ល វ ស ហ ឡ អ ឥ ឦ ឧ ឪ ឫ ឬ ឯ ឱ ទាំងអស់";
 const kTeststr_kn_Knda = " ಂಠಯ್ಯನವರು ತುಮಕೂರು ಜಿಲ್ಲೆಯ ಚಿಕ್ಕನಾಯಕನಹಳ್ಳಿ ತಾಲ್ಲೂಕಿನ ತೀರ್ಥಪುರ ವೆಂಬ ಸಾಧಾರಣ ಹಳ್ಳಿಯ ಶ್ಯಾನುಭೋಗರ";
 const kTeststr_ko_Hani = " 개별적으로 리포트 액세스 권한을 부여할 수 있습니다 액세스 권한 부여사용자에게 프로필 리포트에 액세스할 수 있는 권한을 부여하시려면 가용 프로필 상자에서 프로필 이름을 선택한 다음";
-//const kTeststr_ks_Arab = "پیٹھ سٮ۪اگت! آکھ آزاد گیانکوشٖٔ ہۄ کٲنٛسِہ تِہ ہٮ۪کُن اٮ۪ڑِٹ۔ تور چھک ٢٢٨ مَضموٗنن منز کٲشُر ویکیپیٖڈیا چھُ آکھ مَنصوٗبہٕ خٲطرٕ بنَاوُن آکھ گیانکوشٖٔ سۭتۍ آزاد منز 280 زَبانَن تٔمِس یۄسہٕ ژٕ سۭتۍ تُہُنٛد گیان ہُرٮ۪ر کَرُن ہٮ۪کُن";
 // From 10% testing part of new lang=ks scrape
 const kTeststr_ks_Arab = " ژماں سرابن منز  گرٲن چھِہ خابٕک کھلونہٕ ؤڈراواں   تُلتِھ نِیَس تہٕ گوشہِ گوشہِ مندچھاوى۪س   دِلس چھُہ وون٘ت وُچھان از ستم قلم  صبوٝرٕ وول مسٲفر لیۆکھُن بێتابن منز   ورل سوال چھُہ تراواں جوابن منز    کالہٕ پھۯستہٕ پھن٘ب پگَہہ پہ   پۆت نظر دِژ نہٕ ژھالہٕ مٔت آرن     مٲنز مسول متھان چھےٚ مس والن  وۅن چھےٚ غارن تہِ نارٕ ژھٹھ ژاپان  رێش تۅرگ تراوٕہن تہٕ ون رٹہٕ ہن  ہوشہِ ہێۆچھ نہٕ پوشنوٝلس نِش  مۅہرٕ دی دی زٕلاں چھِ زى۪و حرفن  لۆدرٕ پھٔل ہى۪تھ ملر عازمؔ  سۆدرٕ کھۅنہِ منز منگاں چھُہ ندرى۪ن پن   ژے تھى۪کی یہِ مسٲفر پنن وُڈو تہٕ پڑاو   گٕتَو گٕتَو چھےٚ یہِ کۅل بُتھ تہٕ بانہٕ سٕہہ گۅردٕ چھہِ سپداں دمہٕ پُھٹ  چھِٹہ پونپر پکھہٕ داران سُہ یتى۪ن تۯاوِ  کم نظر دۯاکھ تہٕ باسیوے سُہ مۆہ ہیو یێران  مےٚ ژى۪تُرمُت چھُہ سُلی تس چھےٚ کتى۪ن تھپھ  شاد مس کراں وُچھ مےٚ خون  ژٕ خبر کیازِ کراں دۯاکھ تمِس پى۪ٹھ ماتم  أز کہِ شبہٕ آو مےٚ بێیہِ پیش سفر زانہِ خدا  دارِ پى۪ٹھ ژٲنگ ہنا تھو زِ ژے چھےٚ مێون  أنہٕ کپٹاں چھُہ زٕژن سون مظفّر عازمؔ  پوشہ برگن چھُہ سُواں چاکھ سُہ الماس قلم   لوِ کٔ ڈ نوِ سرٕ سونتس کل   پروِ بۆر بێیہ از بانبرِ ہۆت  یمبرزلہِ ٹارى۪ن منز نار   وزملہِ کۅسہٕ کتھ کٔر اظہار  کچھہِ منزٕ ؤن رووُم اچھہِ  چشمو ژوپُم کٔنڈ انبار   تماشہِ چھہِ تگاں";
 
 const kTeststr_ks_Deva = "नमस्ते शारदे देवि काश्मिरपुर्वासिनि त्वामहम प्रार्थये देवि विद्य दानम च देहि मे कॉशुर लेख॒नुक सारिव॒य खॊत॒ आसान तरीक॒ छु यि देवनागरी टाइपराइटर इस्तिमाल करुन. अथ मंज़ छि कॉशुर लेख॒न॒चि सारॆय मात्रायि. अमि अलाव॒ हॆकिव तॊह्य् यिम॒ यूनिकोड एडिटर ति वरतॉविथ मगर कॉशिरि मात्रायि लेख॒नस गछ़ि हना दिकथ: अक्षरमालाछु अख मुफ़्त त॒ सॅहॅल सोफ्टवेर यॆमि स॒त्य् युनिकोड देवनागरी मंज़ ITRANS scheme स॒त्य् छु यिवान लेख॒न॒. वुछिव: सहायता. अथ स॒त्य् जुडिथ जालपृष्ठ (वेबपेज) (सॉरी अँग्रीज़ी पॉठ्य)";
 const kTeststr_ku_Arab = " بۆ به ڕێوه بردنی نامه ی که دێتن ڕاسته وخۆ ڕه وان بکه نامه کانی گ مایل بۆ حسابی پۆستێکی تر هێنانی په یوه ندکاره کان له";
 const kTeststr_ku_Latn = " be zmaneki ter le inglis werdegeretewe em srvise heshta le cor beta daye wate hest a taqi dekrete u bashtr dekret tewawwzmanekan wernegrawnetewe u ne hemu laperakn ke eme pshtiwan dekayn be teaweti wergerawete nermwalley wergeran teksti new wene nasnatewe";
 const kTeststr_ky_Arab = " جانا انى تانۇۇ ۇلۇتۇن تانۇۇ قىرعىزدى بئلۉۉ دەگەندىك اچىق ايتساق ماناستى تاانىعاندىق ۅزۉڭدۉ تاانىعاندىق بۉگۉن تەما جۉكتۅمۅ ق ى رع ى ز ت ى ل ى";
 const kTeststr_ky_Cyrl = " агай эле оболу мен садыбакас аганын өзү менен эмес эмгектери менен тааныштым жылдары ташкенде өзбекстан илимдер академиясынын баяны";
@@ -144,17 +137,16 @@ const kTeststr_lv_Latn = " a gadskārtējā izpārdošana slēpošana jāņi atlaide izmaiņas trafikā kas saistītas ar sezonas izpārdošanu speciālajām atlaidēm u c ir parastas un atslēgvārdi kas ir populāri noteiktos laika posmos šajā laikā saņems lielāku klikšķu";
 const kTeststr_mfe_Latn = "Anz dir mwa, Sa bann delo ki to trouve la, kot fam prostitie asize, samem bann pep, bann lafoul dimoun, bann nasion ek bann langaz. Sa dis korn ki to finn trouve, ansam avek bebet la, zot pou ena laenn pou prostitie la; zot pou pran tou seki li ena e met li touni, zot pou manz so laser e bril seki reste dan dife. Parski Bondie finn met dan zot leker proze pou realiz so plan. Zot pou met zot dakor pou sed zot pouvwar bebet la ziska ki parol Bondie fini realize.";
 const kTeststr_mg_Latn = " amporisihin i ianao mba hijery ny dika teksta ranofotsiny an ity lahatsoratra ity tsy ilaina ny opérateur efa karohina daholo ny teny rehetra nosoratanao ampiasao anaovana dokambarotra i google telugu datin ny takelaka fikarohana sary renitakelak i";
 const kTeststr_mi_Latn = " haere ki te kainga o o haere ki te kainga o o haere ki te kainga o te rapunga ahua o haere ki te kainga o ka tangohia he ki to rapunga kaore au mohio te tikanga whakatiki o te ra he whakaharuru te pai rapunga a te rapunga ahua a e kainga o nga awhina o te";
 const kTeststr_mk_Cyrl = " гласовите коалицијата на вмро дпмне како партија со најмногу освоени гласови ќе добие евра а на сметката на коализијата за македонија";
 const kTeststr_ml_Mlym = " ം അങ്ങനെ ഞങ്ങള് അവരുടെ മുമ്പില് നിന്നു ഔടും ഉടനെ നിങ്ങള് പതിയിരിപ്പില് നിന്നു എഴുന്നേറ്റു";
 const kTeststr_mn_Cyrl = " а боловсронгуй болгох орон нутгийн ажил үйлсийг уялдуулж зохицуулах дүрэм журам боловсруулах орон нутгийн өмч хөрөнгө санхүүгийн";
 const kTeststr_mn_Mong = "ᠦᠭᠡ ᠵᠢᠨ ᠴᠢᠨᠭ᠎ᠠ ᠬᠦᠨᠳᠡᠢ ᠵᠢ ᠢᠯᠭᠠᠬᠣ";
 const kTeststr_mr_Deva = "हैदराबाद  उच्चार ऐका (सहाय्य·माहिती)तेलुगू: హైదరాబాదు , उर्दू: حیدر آباد हे भारतातील आंध्र प्रदेश राज्याच्या राजधानीचे शहर आहे. हैदराबादची लोकसंख्या ७७ लाख ४० हजार ३३४ आहे. मोत्यांचे शहर अशी एकेकाळी ओळख असलेल्या या शहराला ऐतिहासिक, सांस्कृतिक आणि स्थापत्यशास्त्रीय वारसा लाभला आहे. १९९० नंतर शिक्षण आणि माहिती तंत्रज्ञान त्याचप्रमाणे औषधनिर्मिती आणि जैवतंत्रज्ञान क्षेत्रातील उद्योगधंद्यांची वाढ शहरात झाली. दक्षिण मध्य भारतातील पर्यटन आणि तेलुगू चित्रपटनिर्मितीचे हैदराबाद हे केंद्र आहे";
-//const kTeststr_ms_Latn = "daripada dirinya hirako shinji seorang pemuda merujuk diri mereka sebagai vizard shinji telah cuba untuk menyakinkan ichigo untuk menyertai kumpulan mereka mengatakan bahawa hanya dia sahaja yang mampu mengajar ichigo teknik untuk mengawal hollow";
 // From 10% testing part of new lang=ms scrape
 const kTeststr_ms_Latn = "pengampunan beramai-ramai supaya mereka pulang ke rumah masing-masing. Orang-orang besarnya enggan mengiktiraf sultan yang dilantik oleh Belanda sebagai Yang DiPertuan Selangor. Orang ramai pula tidak mahu menjalankan perniagaan bijih timah dengan Belanda, selagi raja yang berhak tidak ditabalkan. Perdagang yang lain dibekukan terus kerana untuk membalas jasa beliau yang membantu Belanda menentang Riau, Johor dan Selangor. Di antara tiga orang Sultan juga dipandang oleh rakyat sebagai seorang sultan yang paling gigih. 1 | 2 SULTAN Sebagai ganti Sultan Ibrahim ditabalkan Raja Muhammad iaitu Raja Muda. Walaupun baginda bukan anak isteri pertama bergelar Sultan Muhammad bersemayam di Kuala Selangor juga. Pentadbiran baginda yang lemah itu menyebabkan Kuala Selangor menjadi sarang ioleh Cina di Lukut tidak diambil tindakan, sedangkan baginda sendiri banyak berhutang kepada 1";
 
 const kTeststr_ms_Latn2 = "bilik sebelah berkata julai pada pm ladymariah hmm sume ni terpulang kepada individu mungkin anda bernasib baik selama ini dalam membeli hp yang bagus deli berkata julai pada pm walaupun bukan bahsa baku tp tetap bahasa melayu kan perubahan boleh dibuat";
 const kTeststr_mt_Latn = " ata ikteb messaġġ lil indirizzi differenti billi tagħżilhom u tagħfas il buttuna ikteb żid numri tfittxijja tal kotba mur print home kotba minn pagni ghal pagna minn ghall ktieb ta aċċessa stieden habib iehor grazzi it tim tal gruppi google";
 const kTeststr_my_Latn = " jyk ef oif gawgodcsifayvdrfhrnf bmawgrsm topf dsvj g mail tamumif avhvm atmif txjwgif yxrqhk avhvm efae m pwifavhvm ef ufkyfwdky help center odkyvmyg drsm ar avh dswjhar cgef rsm udkawdkifygw f tajzawgudk smedkifygw f jyd awmh g mail cool features rsm";
 const kTeststr_my_Mymr = " တက္ကသုိလ္ မ္ဟ ပ္ရန္ လာ္ရပီးေနာက္ န္ဟစ္ အရ္ဝယ္ ဦးသန္ ့သည္ ပန္ းတနော္ အမ္ယုိးသား ေက္ယာင္ း";
 const kTeststr_na_Latn = " arcol obabakaen riringa itorere ibibokiei ababaro min kuduwa airumena baoin tokin rowiowet itiket keram damadamit eigirow etoreiy row keitsito boney ibingo itsiw dorerin naoerodelaporte s nauruan dictionary a c a c d g h o p s t y aiquen ion eins aiquen";
@@ -189,17 +181,16 @@ const kTeststr_si_Sinh = " අනුරාධ මිහිඳුකුල නමින් සකුරා ට ලිපියක් තැපෑලෙන් එවා තිබුණා කි ් රස්ටි ෂෙල්ටන් ප ් රනාන්දු ද";
 const kTeststr_sit_NP = " dialekten in de roerstreek pierre bakkes oet roerstreek blz bewirk waordebook zónjig oktoeaber is t ieëste mofers waordebook oetgekaome dit waordebook is samegestèldj";
 const kTeststr_sk_Latn = " a aktivovať reklamnú kampaň ak chcete kampaň pred spustením ešte prispôsobiť uložte ju ako šablónu a pokračujte v úprave vyberte si jednu z možností nižšie a kliknite na tlačidlo uložiť kampaň nastavenia kampane môžete ľubovoľne";
 const kTeststr_sl_Latn = " adsense stanje prijave za google adsense google adsense račun je bil začasno zamrznjen pozdravljeni hvala za vaše zanimanje v google adsense po pregledu vaše prijavnice so naši strokovnjaki ugotovili da spletna stran ki je trenutno povezana z vašim";
 const kTeststr_sm_Latn = " autu mea o lo totonu le e le minaomia matou te tuu i totonu i le faamatalaina o le suesuega i taimi uma mea o lo totonu fuafua i mea e tatau fa afoi tala mai le newsgroup mataupu fa afoi mai tala e ai le mataupu e ai totonu tusitala o le itu o faamatalaga";
 const kTeststr_sn_Latn = " chete vanyori vanotevera vakabatsira kunyora zvikamu zvino kumba home tinyorere tsamba chikamu chakumbirwa hachina kuwanikwa chikamu ichi cheninge chakayiswa kuimwe nzvimbo mudhairekitori rino chimwe chikamu chopadhuze pane chinhu chatadza kushanda bad";
 const kTeststr_so_Latn = " a oo maanta bogga koobaad ugu qoran yahey beesha caalamka laakiin si kata oo beesha caalamku ula guntato soomaaliya waxa aan shaki ku jirin in aakhirataanka dadka soomaalida oo kaliya ay yihiin ku soomaaliya ka saari kara dhibka ay ku jirto";
 const kTeststr_sq_Latn = " a do të kërkoni nga beogradi që të njohë pavarësinë e kosovës zoti thaçi prishtina është gati ta njoh pavarësinë e serbisë ndërsa natyrisht se do të kërkohet një gjë e tillë që edhe beogradi ta njoh shtetin e pavarur dhe sovran të";
 const kTeststr_sr_Cyrl = "балчак балчак на мапи србије уреди демографија у насељу балчак живи пунолетна становника а просечна старост становништва износи година";
-//const kTeststr_sr_Latn = " autonomnih pokrajina saveznim zakonom može se propisati poseban sastav organizacija i delokrug saveta za poslove narodne odbrane članove saveta federacije bira na predlog predsedništva savezna skupština iz reda društveno političkih i drugih javnih";
 const kTeststr_sr_Latn = "Društvo | četvrtak 1.08.2013 | 13:43 Krade se i izvorska voda Izvor:  Gornji Milanovac -- U gružanskom selu Belo Polje prošle noći ukradeno je više od 10.000 litara kojima je obijen bazen. Bazen je bio zaključan i propisno obezbeđen.";
 
 const kTeststr_sr_ME_Latn = "savjet pobjeda a radi bržeg rada pošto rom radi sporije nego ram izvorni rom se isključuje a dio ram a se rezerviše te se u njega ne ploča procesor ram memorija grafička kartica zvučna kartica modem mrežna kartica napojna jedinica uređaji za pohranjivanje";
 const kTeststr_ss_Latn = " bakhokhintsela yesikhashana bafake imininingwane ye akhawunti leliciniso kulelifomu nangabe akukafakwa imininingwane leliciniso imali lekhokhiwe angeke ifakwe kumkhokhintsela lofanele imininingwane ye akhawunti ime ngalendlela lelandzelako inombolo";
 const kTeststr_st_Latn = " bang ba nang le thahasello matshwao a sehlooho thuto e thehilweng hodima diphetho ke tsela ya ho ruta le ho ithuta e totobatsang hantle seo baithuti ba lokelang ho se fihlella ntlhatheo eo e sebetsang ka yona ke ya hore titjhere o hlakisa pele seo";
 const kTeststr_su_Latn =  "Nu ngatur kahirupan warga, keur kapentingan pamarentahan diatur ku RT, RW jeung Kepala Dusun, sedengkeun urusan adat dipupuhuan ku Kuncen jeung kepala adat. Sanajan Kampung Kuta teu pati anggang jeung lembur sejenna nu aya di wewengkon Desa Pasir Angin, tapi boh wangunan imah atawa tradisi kahirupan masarakatna nenggang ti nu lian.";
 const kTeststr_sv_Latn = " a bort objekt från google desktop post äldst meny öretag dress etaljer alternativ för vad är inne yaste google skrivbord plugin program för nyheter google visa nyheter som är anpassade efter de artiklar som du läser om du till exempel läser";
 const kTeststr_sw_Latn = " a ujumbe mpya jumla unda tafuta na angalia vikundi vya kujadiliana na kushiriki mawazo iliyopangwa kwa tarehe watumiaji wapya futa orodha hizi lugha hoja vishikanisho vilivyo dhaminiwa ujumbe sanaa na tamasha toka udhibitisho wa neno kwa haraka fikia";
@@ -373,17 +364,16 @@ const kTestPairs = [
   ["id", "INDONESIAN", kTeststr_id_close, [true, 80], []],
   ["ms", "MALAY", kTeststr_ms_close],
 
 // Simple intermixed French/English text
   ["fr", "FRENCH", kTeststr_fr_en_Latn, [false, 80, "en", 32]],
 
 // Cross-check the main quadgram table build date
 // Change the expected language each time it is rebuilt
-  //["WELSH", kTeststr_version],   // 2013.07.15
   ["az", "AZERBAIJANI", kTeststr_version]   // 2014.01.31
 ];
 
 Components.utils.import("resource://gre/modules/Timer.jsm");
 let detectorModule = Components.utils.import("resource:///modules/translation/LanguageDetector.jsm");
 
 function check_result(result, langCode, expected) {
   equal(result.language, langCode, "Expected language code");
--- a/browser/components/uitour/test/browser_UITour_modalDialog.js
+++ b/browser/components/uitour/test/browser_UITour_modalDialog.js
@@ -40,17 +40,17 @@ var observer = SpecialPowers.wrapCallbac
     }
 });
 
 function getDialogDoc() {
   // Find the <browser> which contains notifyWindow, by looking
   // through all the open windows and all the <browsers> in each.
   var wm = Cc["@mozilla.org/appshell/window-mediator;1"].
            getService(Ci.nsIWindowMediator);
-  //var enumerator = wm.getEnumerator("navigator:browser");
+  // var enumerator = wm.getEnumerator("navigator:browser");
   var enumerator = wm.getXULWindowEnumerator(null);
 
   while (enumerator.hasMoreElements()) {
     var win = enumerator.getNext();
     var windowDocShell = win.QueryInterface(Ci.nsIXULWindow).docShell;
 
     var containedDocShells = windowDocShell.getDocShellEnumerator(
                                       Ci.nsIDocShellTreeItem.typeChrome,
@@ -60,17 +60,17 @@ function getDialogDoc() {
         var childDocShell = containedDocShells.getNext();
         // We don't want it if it's not done loading.
         if (childDocShell.busyFlags != Ci.nsIDocShell.BUSY_FLAGS_NONE)
           continue;
         var childDoc = childDocShell.QueryInterface(Ci.nsIDocShell)
                                     .contentViewer
                                     .DOMDocument;
 
-        //ok(true, "Got window: " + childDoc.location.href);
+        // ok(true, "Got window: " + childDoc.location.href);
         if (childDoc.location.href == "chrome://global/content/commonDialog.xul")
           return childDoc;
     }
   }
 
   return null;
 }
 
--- a/browser/experiments/Experiments.jsm
+++ b/browser/experiments/Experiments.jsm
@@ -482,17 +482,17 @@ Experiments.Experiments.prototype = {
       isFirstEvaluate: this._firstEvaluate,
       hasLoadTask: !!this._loadTask,
       hasMainTask: !!this._mainTask,
       hasTimer: !!this._hasTimer,
       hasAddonProvider: !!gAddonProvider,
       latestLogs: this._forensicsLogs,
       experiments: this._experiments ? [...this._experiments.keys()] : null,
       terminateReason: this._terminateReason,
-      activeExperiment: !!activeExperiment ? activeExperiment.id : null,
+      activeExperiment: activeExperiment ? activeExperiment.id : null,
     };
     if (this._latestError) {
       if (typeof this._latestError == "object") {
         state.latestError = {
           message: this._latestError.message,
           stack: this._latestError.stack
         };
       } else {
@@ -1559,17 +1559,17 @@ Experiments.ExperimentEntry.prototype = 
         let date = new Date();
         date.setTime(data[key]);
         this[key] = date;
       }
     });
 
     // In order for the experiment's data expiration mechanism to work, use the experiment's
     // |_endData| as the |_lastChangedDate| (if available).
-    this._lastChangedDate = !!this._endDate ? this._endDate : this._policy.now();
+    this._lastChangedDate = this._endDate ? this._endDate : this._policy.now();
 
     return true;
   },
 
   /*
    * Returns a JSON representation of this object.
    */
   toJSON: function () {
@@ -1971,17 +1971,17 @@ Experiments.ExperimentEntry.prototype = 
     }
 
     // Check permissions to see if we can enable the addon.
     if (!(addon.permissions & AddonManager.PERM_CAN_ENABLE)) {
       throw new Error("Don't have permission to enable addon " + addon.id + ", perm=" + addon.permission);
     }
 
     // Experiment addons should not require a restart.
-    if (!!(addon.operationsRequiringRestart & AddonManager.OP_NEEDS_RESTART_ENABLE)) {
+    if (addon.operationsRequiringRestart & AddonManager.OP_NEEDS_RESTART_ENABLE) {
       throw new Error("Experiment addon requires a restart: " + addon.id);
     }
 
     let deferred = Promise.defer();
 
     // Else we need to enable it.
     let listener = {
       onEnabled: enabledAddon => {
--- a/browser/modules/ContentWebRTC.jsm
+++ b/browser/modules/ContentWebRTC.jsm
@@ -71,17 +71,17 @@ this.ContentWebRTC = {
         let callID = aMessage.data.callID;
         let contentWindow = Services.wm.getOuterWindowWithId(aMessage.data.windowID);
         let devices = contentWindow.pendingGetUserMediaRequests.get(callID);
         forgetGUMRequest(contentWindow, callID);
 
         let allowedDevices = Cc["@mozilla.org/array;1"]
                                .createInstance(Ci.nsIMutableArray);
         for (let deviceIndex of aMessage.data.devices)
-           allowedDevices.appendElement(devices[deviceIndex], /*weak =*/ false);
+           allowedDevices.appendElement(devices[deviceIndex], /* weak =*/ false);
 
         Services.obs.notifyObservers(allowedDevices, "getUserMedia:response:allow", callID);
         break;
       }
       case "webrtc:Deny":
         denyGUMRequest(aMessage.data);
         break;
       case "webrtc:StopSharing":
--- a/browser/modules/PluginContent.jsm
+++ b/browser/modules/PluginContent.jsm
@@ -337,17 +337,17 @@ PluginContent.prototype = {
       if (el !== plugin) {
         return false;
       }
     }
 
     return true;
   },
 
-  addLinkClickCallback: function (linkNode, callbackName /*callbackArgs...*/) {
+  addLinkClickCallback: function (linkNode, callbackName /* callbackArgs...*/) {
     // XXX just doing (callback)(arg) was giving a same-origin error. bug?
     let self = this;
     let callbackArgs = Array.prototype.slice.call(arguments).slice(2);
     linkNode.addEventListener("click",
                               function(evt) {
                                 if (!evt.isTrusted)
                                   return;
                                 evt.preventDefault();
--- a/browser/modules/WindowsJumpLists.jsm
+++ b/browser/modules/WindowsJumpLists.jsm
@@ -80,17 +80,17 @@ XPCOMUtils.defineLazyModuleGetter(this, 
 /**
  * Global functions
  */
 
 function _getString(name) {
   return _stringBundle.GetStringFromName(name);
 }
 
-/////////////////////////////////////////////////////////////////////////////
+// ///////////////////////////////////////////////////////////////////////////
 // Task list configuration data object.
 
 var tasksCfg = [
   /**
    * Task configuration options: title, description, args, iconIndex, open, close.
    *
    * title       - Task title displayed in the list. (strings in the table are temp fillers.)
    * description - Tooltip description on the list item.
@@ -130,17 +130,17 @@ var tasksCfg = [
     args:             "-private-window",
     iconIndex:        4, // Private browsing mode icon
     open:             true,
     close:            true, // No point, but we don't always update the list on
                             // shutdown. Thus true for consistency.
   },
 ];
 
-/////////////////////////////////////////////////////////////////////////////
+// ///////////////////////////////////////////////////////////////////////////
 // Implementation
 
 this.WinTaskbarJumpList =
 {
   _builder: null,
   _tasks: null,
   _shuttingDown: false,
 
--- a/browser/modules/WindowsPreviewPerTab.jsm
+++ b/browser/modules/WindowsPreviewPerTab.jsm
@@ -57,18 +57,18 @@ Cu.import("resource://gre/modules/XPCOMU
 const TOGGLE_PREF_NAME = "browser.taskbar.previews.enable";
 // Pref to determine the magic auto-disable threshold
 const DISABLE_THRESHOLD_PREF_NAME = "browser.taskbar.previews.max";
 // Pref to control the time in seconds that tab contents live in the cache
 const CACHE_EXPIRATION_TIME_PREF_NAME = "browser.taskbar.previews.cachetime";
 
 const WINTASKBAR_CONTRACTID = "@mozilla.org/windows-taskbar;1";
 
-////////////////////////////////////////////////////////////////////////////////
-//// Various utility properties
+// //////////////////////////////////////////////////////////////////////////////
+// // Various utility properties
 XPCOMUtils.defineLazyServiceGetter(this, "imgTools",
                                    "@mozilla.org/image/tools;1",
                                    "imgITools");
 XPCOMUtils.defineLazyModuleGetter(this, "PageThumbs",
                                   "resource://gre/modules/PageThumbs.jsm");
 
 // nsIURI -> imgIContainer
 function _imageFromURI(uri, privateMode, callback) {
@@ -118,18 +118,18 @@ function snapRectAtScale(r, scale) {
   let height = Math.ceil((r.y + r.height) * scale) - y;
 
   r.x = x / scale;
   r.y = y / scale;
   r.width = width / scale;
   r.height = height / scale;
 }
 
-////////////////////////////////////////////////////////////////////////////////
-//// PreviewController
+// //////////////////////////////////////////////////////////////////////////////
+// // PreviewController
 
 /*
  * This class manages the behavior of thumbnails and previews. It has the following
  * responsibilities:
  * 1) responding to requests from Windows taskbar for a thumbnail or window
  *    preview.
  * 2) listens for dom events that result in a thumbnail or window preview needing
  *    to be refresh, and communicates this to the taskbar.
@@ -234,18 +234,18 @@ PreviewController.prototype = {
   },
 
   updateTitleAndTooltip: function () {
     let title = this.win.tabbrowser.getWindowTitleForBrowser(this.linkedBrowser);
     this.preview.title = title;
     this.preview.tooltip = title;
   },
 
-  //////////////////////////////////////////////////////////////////////////////
-  //// nsITaskbarPreviewController
+  // ////////////////////////////////////////////////////////////////////////////
+  // // nsITaskbarPreviewController
 
   // window width and height, not browser
   get width() {
     return this.win.width;
   },
 
   // window width and height, not browser
   get height() {
@@ -317,32 +317,32 @@ PreviewController.prototype = {
    */
   requestThumbnail: function (aTaskbarCallback, aRequestedWidth, aRequestedHeight) {
     this.resizeCanvasPreview(aRequestedWidth, aRequestedHeight);
     this.updateCanvasPreview(false, (aThumbnailCanvas) => {
       aTaskbarCallback.done(aThumbnailCanvas, false);
     });
   },
 
-  //////////////////////////////////////////////////////////////////////////////
-  //// Event handling
+  // ////////////////////////////////////////////////////////////////////////////
+  // // Event handling
 
   onClose: function () {
     this.win.tabbrowser.removeTab(this.tab);
   },
 
   onActivate: function () {
     this.win.tabbrowser.selectedTab = this.tab;
 
     // Accept activation - this will restore the browser window
     // if it's minimized
     return true;
   },
 
-  //// nsIDOMEventListener
+  // // nsIDOMEventListener
   handleEvent: function (evt) {
     switch (evt.type) {
       case "TabAttrModified":
         this.updateTitleAndTooltip();
         break;
     }
   }
 };
@@ -350,18 +350,18 @@ PreviewController.prototype = {
 XPCOMUtils.defineLazyGetter(PreviewController.prototype, "canvasPreviewFlags",
   function () { let canvasInterface = Ci.nsIDOMCanvasRenderingContext2D;
                 return canvasInterface.DRAWWINDOW_DRAW_VIEW
                      | canvasInterface.DRAWWINDOW_DRAW_CARET
                      | canvasInterface.DRAWWINDOW_ASYNC_DECODE_IMAGES
                      | canvasInterface.DRAWWINDOW_DO_NOT_FLUSH;
 });
 
-////////////////////////////////////////////////////////////////////////////////
-//// TabWindow
+// //////////////////////////////////////////////////////////////////////////////
+// // TabWindow
 
 /*
  * This class monitors a browser window for changes to its tabs
  *
  * @param win
  *        The nsIDOMWindow browser window
  */
 function TabWindow(win) {
@@ -504,17 +504,17 @@ TabWindow.prototype = {
     // on it the sorting order of our local array.  To do so we must walk
     // the local array backwards, otherwise we would send move requests in the
     // wrong order.  See bug 522610 for details.
     for (let i = inorder.length - 1; i >= 0; i--) {
       inorder[i].move(inorder[i + 1] || null);
     }
   },
 
-  //// nsIDOMEventListener
+  // // nsIDOMEventListener
   handleEvent: function (evt) {
     let tab = evt.originalTarget;
     switch (evt.type) {
       case "TabOpen":
         this.newTab(tab);
         this.updateTabOrdering();
         break;
       case "TabClose":
@@ -578,22 +578,22 @@ TabWindow.prototype = {
     for (let [tab, preview] of this.previews) {
       if (aBrowser == tab.linkedBrowser) {
         preview.invalidate();
         break;
       }
     }
   },
 
-  //// Browser progress listener
+  // // Browser progress listener
 
   onLocationChange: function (aBrowser) {
     // I'm not sure we need this, onStateChange does a really good job
     // of picking up page changes.
-    //this.invalidateTabPreview(aBrowser);
+    // this.invalidateTabPreview(aBrowser);
   },
 
   onStateChange: function (aBrowser, aWebProgress, aRequest, aStateFlags, aStatus) {
     if (aStateFlags & Ci.nsIWebProgressListener.STATE_STOP &&
         aStateFlags & Ci.nsIWebProgressListener.STATE_IS_NETWORK) {
       this.invalidateTabPreview(aBrowser);
     }
   },
@@ -632,18 +632,18 @@ TabWindow.prototype = {
             preview.icon = img;
           }
         }
       }
     );
   }
 }
 
-////////////////////////////////////////////////////////////////////////////////
-//// AeroPeek
+// //////////////////////////////////////////////////////////////////////////////
+// // AeroPeek
 
 /*
  * This object acts as global storage and external interface for this feature.
  * It maintains the values of the prefs.
  */
 this.AeroPeek = {
   available: false,
   // Does the pref say we're enabled?
@@ -796,17 +796,17 @@ this.AeroPeek = {
       this.destroy();
   },
 
   resetCacheTimer: function () {
     this.cacheTimer.cancel();
     this.cacheTimer.init(this, 1000*this.cacheLifespan, Ci.nsITimer.TYPE_ONE_SHOT);
   },
 
-  //// nsIObserver
+  // // nsIObserver
   observe: function (aSubject, aTopic, aData) {
     if (aTopic == "nsPref:changed" && aData == TOGGLE_PREF_NAME) {
       this._prefenabled = this.prefs.getBoolPref(TOGGLE_PREF_NAME);
     }
     if (!this._prefenabled) {
       return;
     }
     switch (aTopic) {
--- a/browser/modules/test/browser_UsageTelemetry.js
+++ b/browser/modules/test/browser_UsageTelemetry.js
@@ -157,17 +157,17 @@ add_task(function* test_subsessionSplit(
                 totalURIs: 1, domainCount: 1, totalUnfilteredURIs: 2});
 
   // Remove a tab.
   yield BrowserTestUtils.removeTab(openedTabs.pop());
 
   // Simulate a subsession split by clearing the scalars (via |snapshotScalars|) and
   // notifying the subsession split topic.
   Services.telemetry.snapshotScalars(Ci.nsITelemetry.DATASET_RELEASE_CHANNEL_OPTIN,
-                                     true /* clearScalars*/);
+                                     true /* clearScalars */);
   Services.obs.notifyObservers(null, TELEMETRY_SUBSESSION_TOPIC, "");
 
   // After a subsession split, only the MAX_CONCURRENT_* scalars must be available
   // and have the correct value. No tabs, windows or URIs were opened so other scalars
   // must not be reported.
   checkScalars({maxTabs: 4, tabOpenCount: 0, maxWindows: 2, windowsOpenCount: 0,
                 totalURIs: 0, domainCount: 0, totalUnfilteredURIs: 0});
 
--- a/browser/modules/test/browser_UsageTelemetry_searchbar.js
+++ b/browser/modules/test/browser_UsageTelemetry_searchbar.js
@@ -4,17 +4,16 @@ const SCALAR_SEARCHBAR = "browser.engage
 
 let searchInSearchbar = Task.async(function* (inputText) {
   let win = window;
   yield new Promise(r => waitForFocus(r, win));
   let sb = BrowserSearch.searchBar;
   // Write the search query in the searchbar.
   sb.focus();
   sb.value = inputText;
-  //sb.textbox.openPopup();
   sb.textbox.controller.startSearch(inputText);
   // Wait for the popup to show.
   yield BrowserTestUtils.waitForEvent(sb.textbox.popup, "popupshown");
   // And then for the search to complete.
   yield BrowserTestUtils.waitForCondition(() => sb.textbox.controller.searchStatus >=
                                                 Ci.nsIAutoCompleteController.STATUS_COMPLETE_NO_MATCH,
                                           "The search in the searchbar must complete.");
 });
--- a/browser/tools/mozscreenshots/mozscreenshots/extension/Screenshot.jsm
+++ b/browser/tools/mozscreenshots/mozscreenshots/extension/Screenshot.jsm
@@ -68,17 +68,17 @@ this.Screenshot = {
   // Capture the whole screen using an external application.
   captureExternal(filename) {
     let imagePath = this._buildImagePath(filename);
     return this._screenshotFunction(imagePath).then(() => {
       log.debug("saved screenshot: " + filename);
     });
   },
 
-  ///// helpers /////
+  // /// helpers /////
 
   _screenshotWindows(filename) {
     return new Promise((resolve, reject) => {
       let exe = Services.dirsvc.get("GreBinD", Ci.nsIFile);
       exe.append("screenshot.exe");
       if (!exe.exists()) {
         exe = Services.dirsvc.get("CurWorkD", Ci.nsIFile).parent;
         exe.append("bin");
--- a/browser/tools/mozscreenshots/mozscreenshots/extension/TestRunner.jsm
+++ b/browser/tools/mozscreenshots/mozscreenshots/extension/TestRunner.jsm
@@ -143,17 +143,17 @@ this.TestRunner = {
     while (gBrowser.tabs.length > 1) {
       gBrowser.removeTab(gBrowser.selectedTab, {animate: false});
     }
     gBrowser.unpinTab(gBrowser.selectedTab);
     gBrowser.selectedBrowser.loadURI("data:text/html;charset=utf-8,<h1>Done!");
     browserWindow.restore();
   },
 
-  ///// helpers /////
+  // /// helpers /////
 
   _performCombo: function*(combo) {
     let paddedComboIndex = padLeft(this.currentComboIndex + 1, String(this.combos.length).length);
     log.info("Combination " + paddedComboIndex + "/" + this.combos.length + ": " +
              this._comboName(combo).substring(1));
 
     function changeConfig(config) {
       log.debug("calling " + config.name);
--- a/browser/tools/mozscreenshots/mozscreenshots/extension/configurations/Toolbars.jsm
+++ b/browser/tools/mozscreenshots/mozscreenshots/extension/configurations/Toolbars.jsm
@@ -40,18 +40,18 @@ this.Toolbars = {
         return undefined;
       }),
     },
 
   },
 };
 
 
-///// helpers /////
+// /// helpers /////
 
 function toggleMenubarIfNecessary(visible) {
   let browserWindow = Services.wm.getMostRecentWindow("navigator:browser");
   // The menubar is not shown on OS X or while in fullScreen
-  if (Services.appinfo.OS != "Darwin" /*&& !browserWindow.fullScreen*/) {
+  if (Services.appinfo.OS != "Darwin" /* && !browserWindow.fullScreen*/) {
     let menubar = browserWindow.document.getElementById("toolbar-menubar");
     browserWindow.setToolbarVisibility(menubar, visible);
   }
 }
--- a/storage/test/unit/head_storage.js
+++ b/storage/test/unit/head_storage.js
@@ -262,18 +262,18 @@ function getTableRowCount(aTableName)
     currentRows = countStmt.row.count;
   }
   finally {
     countStmt.finalize();
   }
   return currentRows;
 }
 
-////////////////////////////////////////////////////////////////////////////////
-//// Promise-Returning Functions
+// //////////////////////////////////////////////////////////////////////////////
+// // Promise-Returning Functions
 
 function asyncClone(db, readOnly) {
   let deferred = Promise.defer();
   db.asyncClone(readOnly, function (status, db2) {
     if (Components.isSuccessCode(status)) {
       deferred.resolve(db2);
     } else {
       deferred.reject(status);
--- a/storage/test/unit/test_js_helpers.js
+++ b/storage/test/unit/test_js_helpers.js
@@ -4,18 +4,18 @@
  * Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/
  */
 
 /**
  * This file tests that the JS language helpers in various ways.
  */
 
-////////////////////////////////////////////////////////////////////////////////
-//// Test Functions
+// //////////////////////////////////////////////////////////////////////////////
+// // Test Functions
 
 function test_params_enumerate()
 {
   let stmt = createStatement(
     "SELECT * FROM test WHERE id IN (:a, :b, :c)"
   );
 
   // Make sure they are right.
@@ -96,18 +96,18 @@ function test_params_gets_async()
   }
 
   // Now make sure we didn't magically get any additional properties.
   let finalCount = Object.getOwnPropertyNames(stmt.params).length;
   do_check_eq(originalCount + expected.length, finalCount);
   */
 }
 
-////////////////////////////////////////////////////////////////////////////////
-//// Test Runner
+// //////////////////////////////////////////////////////////////////////////////
+// // Test Runner
 
 var tests = [
   test_params_enumerate,
   test_params_prototype,
   test_row_prototype,
   test_params_gets_sync,
   test_params_gets_async,
 ];
--- a/storage/test/unit/test_locale_collation.js
+++ b/storage/test/unit/test_locale_collation.js
@@ -19,18 +19,18 @@ const DATA_BASENAME = "locale_collation.
 var gStrings;
 
 // A collation created from the application's locale.  Used by localeCompare().
 var gLocaleCollation;
 
 // A connection to our in-memory UTF-16-encoded database.
 var gUtf16Conn;
 
-///////////////////////////////////////////////////////////////////////////////
-//// Helper Functions
+// /////////////////////////////////////////////////////////////////////////////
+// // Helper Functions
 
 /**
  * Since we create a UTF-16 database we have to clean it up, in addition to
  * the normal cleanup of Storage tests.
  */
 function cleanupLocaleTests()
 {
   print("-- Cleaning up test_locale_collation.js suite.");
@@ -246,18 +246,18 @@ function setup()
 
   let localeSvc = Cc["@mozilla.org/intl/nslocaleservice;1"].
                   getService(Ci.nsILocaleService);
   let collFact = Cc["@mozilla.org/intl/collation-factory;1"].
                  createInstance(Ci.nsICollationFactory);
   gLocaleCollation = collFact.CreateCollation(localeSvc.getApplicationLocale());
 }
 
-///////////////////////////////////////////////////////////////////////////////
-//// Test Runs
+// /////////////////////////////////////////////////////////////////////////////
+// // Test Runs
 
 var gTests = [
   {
     desc: "Case and accent sensitive UTF-8",
     run:   () => runUtf8Test("locale_case_accent_sensitive")
   },
 
   {
--- a/storage/test/unit/test_sqlite_secure_delete.js
+++ b/storage/test/unit/test_sqlite_secure_delete.js
@@ -1,21 +1,21 @@
-/*-*- indent-tabs-mode: nil; js-indent-level: 2 -*-
+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*-
  *vim: sw=2 ts=2 et lcs=trail\:.,tab\:>~ :
  * This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 /**
  * This file tests to make sure that SQLite was compiled with
  * SQLITE_SECURE_DELETE=1.
  */
 
-////////////////////////////////////////////////////////////////////////////////
-//// Helper Methods
+// //////////////////////////////////////////////////////////////////////////////
+// // Helper Methods
 
 /**
  * Reads the contents of a file and returns it as a string.
  *
  * @param aFile
  *        The file to return from.
  * @return the contents of the file in the form of a string.
  */
@@ -26,18 +26,18 @@ function getFileContents(aFile)
   fstream.init(aFile, -1, 0, 0);
 
   let bstream = Cc["@mozilla.org/binaryinputstream;1"].
                 createInstance(Ci.nsIBinaryInputStream);
   bstream.setInputStream(fstream);
   return bstream.readBytes(bstream.available());
 }
 
-////////////////////////////////////////////////////////////////////////////////
-//// Tests
+// //////////////////////////////////////////////////////////////////////////////
+// // Tests
 
 add_test(function test_delete_removes_data() {
   const TEST_STRING = "SomeRandomStringToFind";
 
   let file = getTestDB();
   let db = getService().openDatabase(file);
 
   // Create the table and insert the data.
--- a/storage/test/unit/test_statement_executeAsync.js
+++ b/storage/test/unit/test_statement_executeAsync.js
@@ -869,18 +869,18 @@ function test_multiple_results()
   // Now check that we get back two rows of data from our async query.
   let stmt = makeTestStatement("SELECT * FROM test");
   execAsync(stmt, {}, expectedResults);
 
   stmt.finalize();
   run_next_test();
 }
 
-////////////////////////////////////////////////////////////////////////////////
-//// Test Runner
+// //////////////////////////////////////////////////////////////////////////////
+// // Test Runner
 
 
 const TEST_PASS_SYNC = 0;
 const TEST_PASS_ASYNC = 1;
 /**
  * We run 2 passes against the test.  One where makeTestStatement generates
  * synchronous (mozIStorageStatement) statements and one where it generates
  * asynchronous (mozIStorageAsyncStatement) statements.
--- a/storage/test/unit/test_storage_connection.js
+++ b/storage/test/unit/test_storage_connection.js
@@ -1,16 +1,16 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 // This file tests the functions of mozIStorageConnection
 
-////////////////////////////////////////////////////////////////////////////////
-//// Test Functions
+// //////////////////////////////////////////////////////////////////////////////
+// // Test Functions
 
 add_task(function* test_connectionReady_open() {
   // there doesn't seem to be a way for the connection to not be ready (unless
   // we close it with mozIStorageConnection::Close(), but we don't for this).
   // It can only fail if GetPath fails on the database file, or if we run out
   // of memory trying to use an in-memory database
 
   var msc = getOpenedDatabase();
--- a/toolkit/.eslintrc.js
+++ b/toolkit/.eslintrc.js
@@ -80,17 +80,17 @@ module.exports = {
 
     // Disallow empty destructuring
     "no-empty-pattern": 2,
 
     // No assiging to exception variable
     "no-ex-assign": 2,
 
     // No using !! where casting to boolean is already happening
-    // "no-extra-boolean-cast": 2,
+    "no-extra-boolean-cast": 2,
 
     // No double semicolon
     "no-extra-semi": 2,
 
     // No overwriting defined functions
     "no-func-assign": 2,
 
     // No invalid regular expresions
@@ -113,17 +113,17 @@ module.exports = {
 
     // No (!foo in bar)
     "no-negated-in-lhs": 2,
 
     // Nested ternary statements are confusing
     "no-nested-ternary": 2,
 
     // Use {} instead of new Object()
-    // "no-new-object": 2,
+    "no-new-object": 2,
 
     // No Math() or JSON()
     "no-obj-calls": 2,
 
     // No octal literals
     "no-octal": 2,
 
     // No redeclaring variables
@@ -131,17 +131,17 @@ module.exports = {
 
     // No unnecessary comparisons
     "no-self-compare": 2,
 
     // No declaring variables from an outer scope
     // "no-shadow": 2,
 
     // No declaring variables that hide things like arguments
-    // "no-shadow-restricted-names": 2,
+    "no-shadow-restricted-names": 2,
 
     // No spaces between function name and parentheses
     // "no-spaced-func": 2,
 
     // No trailing whitespace
     "no-trailing-spaces": 2,
 
     // No using undeclared variables
@@ -178,16 +178,19 @@ module.exports = {
     // "space-in-parens": [2, "never"],
 
     // Require spaces around operators
     // "space-infix-ops": 2,
 
     // ++ and -- should not need spacing
     // "space-unary-ops": [2, { "words": true, "nonwords": false }],
 
+    // Requires or disallows a whitespace (space or tab) beginning a comment
+    "spaced-comment": 2,
+
     // No comparisons to NaN
     "use-isnan": 2,
 
     // Only check typeof against valid results
     "valid-typeof": 2,
   },
   "env": {
     "es6": true,
--- a/toolkit/components/aboutmemory/content/aboutMemory.js
+++ b/toolkit/components/aboutmemory/content/aboutMemory.js
@@ -11,17 +11,17 @@
 //
 // "file=" is not case-sensitive.  We'll URI-unescape the contents of the
 // "file=" argument, and obviously the filename is case-sensitive iff you're on
 // a case-sensitive filesystem.  If you specify more than one "file=" argument,
 // only the first one is used.
 
 "use strict";
 
-//---------------------------------------------------------------------------
+// ---------------------------------------------------------------------------
 
 var Cc = Components.classes;
 var Ci = Components.interfaces;
 var Cu = Components.utils;
 var CC = Components.Constructor;
 
 const KIND_NONHEAP           = Ci.nsIMemoryReporter.KIND_NONHEAP;
 const KIND_HEAP              = Ci.nsIMemoryReporter.KIND_HEAP;
@@ -56,17 +56,17 @@ var gMgr = Cc["@mozilla.org/memory-repor
 
 const gPageName = 'about:memory';
 document.title = gPageName;
 
 const gUnnamedProcessStr = "Main Process";
 
 var gIsDiff = false;
 
-//---------------------------------------------------------------------------
+// ---------------------------------------------------------------------------
 
 // Forward slashes in URLs in paths are represented with backslashes to avoid
 // being mistaken for path separators.  Paths/names where this hasn't been
 // undone are prefixed with "unsafe"; the rest are prefixed with "safe".
 function flipBackslashes(aUnsafeStr)
 {
   // Save memory by only doing the replacement if it's necessary.
   return (aUnsafeStr.indexOf('\\') === -1)
@@ -115,23 +115,23 @@ function reportAssertionFailure(aMsg)
 }
 
 function debug(x)
 {
   let section = appendElement(document.body, 'div', 'section');
   appendElementWithText(section, "div", "debug", JSON.stringify(x));
 }
 
-//---------------------------------------------------------------------------
+// ---------------------------------------------------------------------------
 
 function onUnload()
 {
 }
 
-//---------------------------------------------------------------------------
+// ---------------------------------------------------------------------------
 
 // The <div> holding everything but the header and footer (if they're present).
 // It's what is updated each time the page changes.
 var gMain;
 
 // The <div> holding the footer.
 var gFooter;
 
@@ -208,17 +208,17 @@ function appendElementWithText(aP, aTagN
   let e = appendElement(aP, aTagName, aClassName);
   // Setting textContent clobbers existing children, but there are none.  More
   // importantly, it avoids creating a JS-land object for the node, saving
   // memory.
   e.textContent = aText;
   return e;
 }
 
-//---------------------------------------------------------------------------
+// ---------------------------------------------------------------------------
 
 const explicitTreeDescription =
 "This tree covers explicit memory allocations by the application.  It includes \
 \n\n\
 * allocations made at the operating system level (via calls to functions such as \
 VirtualAlloc, vm_allocate, and mmap), \
 \n\n\
 * allocations made at the heap allocation level (via functions such as malloc, \
@@ -229,17 +229,17 @@ explicitly decommitted (i.e. evicted fro
 \n\n\
 It excludes memory that is mapped implicitly such as code and data segments, \
 and thread stacks. \
 \n\n\
 'explicit' is not guaranteed to cover every explicit allocation, but it does cover \
 most (including the entire heap), and therefore it is the single best number to \
 focus on when trying to reduce memory usage.";
 
-//---------------------------------------------------------------------------
+// ---------------------------------------------------------------------------
 
 function appendButton(aP, aTitle, aOnClick, aText, aId)
 {
   let b = appendElementWithText(aP, "button", "", aText);
   b.title = aTitle;
   b.onclick = aOnClick;
   if (aId) {
     b.id = aId;
@@ -416,17 +416,17 @@ function onLoad()
         let filename = searchSplit[i].substring('file='.length);
         updateAboutMemoryFromFile(decodeURIComponent(filename));
         return;
       }
     }
   }
 }
 
-//---------------------------------------------------------------------------
+// ---------------------------------------------------------------------------
 
 function doGC()
 {
   Services.obs.notifyObservers(null, "child-gc-request", null);
   Cu.forceGC();
   updateMainAndFooter("Garbage collection completed", HIDE_FOOTER);
 }
 
@@ -722,17 +722,17 @@ function updateAboutMemoryFromTwoFiles(a
         gIsDiff = false;
       } catch (ex) {
         handleException(ex);
       }
     });
   });
 }
 
-//---------------------------------------------------------------------------
+// ---------------------------------------------------------------------------
 
 // Something unlikely to appear in a process name.
 var kProcessPathSep = "^:^:^";
 
 // Short for "diff report".
 function DReport(aKind, aUnits, aAmount, aDescription, aNMerged, aPresence)
 {
   this._kind = aKind;
@@ -939,17 +939,17 @@ function diffJSONObjects(aJson1, aJson2)
 
     hasMozMallocUsableSize: simpleProp("hasMozMallocUsableSize"),
 
     reports: makeJSONReports(diffDReportMaps(makeDReportMap(aJson1.reports),
                                              makeDReportMap(aJson2.reports)))
   };
 }
 
-//---------------------------------------------------------------------------
+// ---------------------------------------------------------------------------
 
 // |PColl| is short for "process collection".
 function PColl()
 {
   this._trees = {};
   this._degenerates = {};
   this._heapTotal = 0;
 }
@@ -1090,17 +1090,17 @@ function appendAboutMemoryMain(aProcessR
                                        pcollsByProcess[process]._heapTotal,
                                        aHasMozMallocUsableSize);
     }
   }
 
   aProcessReports(handleReport, displayReports);
 }
 
-//---------------------------------------------------------------------------
+// ---------------------------------------------------------------------------
 
 // There are two kinds of TreeNode.
 // - Leaf TreeNodes correspond to reports.
 // - Non-leaf TreeNodes are just scaffolding nodes for the tree;  their values
 //   are derived from their children.
 // Some trees are "degenerate", i.e. they contain a single node, i.e. they
 // correspond to a report whose path has no '/' separators.
 function TreeNode(aUnsafeName, aUnits, aIsDegenerate)
@@ -1984,25 +1984,25 @@ function appendTreeElements(aP, aRoot, a
     }
   }
 
   let rootStringLength = aRoot.toString().length;
   appendTreeElements2(aP, aProcess, [aRoot._unsafeName], aRoot, aRoot,
                       aPadText, "", "", rootStringLength);
 }
 
-//---------------------------------------------------------------------------
+// ---------------------------------------------------------------------------
 
 function appendSectionHeader(aP, aText)
 {
   appendElementWithText(aP, "h2", "", aText + "\n");
   return appendElement(aP, "pre", "entries");
 }
 
-//---------------------------------------------------------------------------
+// ---------------------------------------------------------------------------
 
 function saveReportsToFile()
 {
   let fp = Cc["@mozilla.org/filepicker;1"].createInstance(Ci.nsIFilePicker);
   fp.appendFilter("Zipped JSON files", "*.json.gz");
   fp.appendFilters(Ci.nsIFilePicker.filterAll);
   fp.filterIndex = 0;
   fp.addToRecentDocs = true;
--- a/toolkit/components/addoncompat/CompatWarning.jsm
+++ b/toolkit/components/addoncompat/CompatWarning.jsm
@@ -61,23 +61,23 @@ var CompatWarning = {
         return;
       }
 
       let message = `Warning: ${msg}`;
       if (warning)
         message += `\nMore info at: ${warning.url}`;
 
       error.init(
-                 /*message*/ message,
-                 /*sourceName*/ stack ? stack.filename : "",
-                 /*sourceLine*/ stack ? stack.sourceLine : "",
-                 /*lineNumber*/ stack ? stack.lineNumber : 0,
-                 /*columnNumber*/ 0,
-                 /*flags*/ Ci.nsIScriptError.warningFlag,
-                 /*category*/ "chrome javascript");
+                 /* message*/ message,
+                 /* sourceName*/ stack ? stack.filename : "",
+                 /* sourceLine*/ stack ? stack.sourceLine : "",
+                 /* lineNumber*/ stack ? stack.lineNumber : 0,
+                 /* columnNumber*/ 0,
+                 /* flags*/ Ci.nsIScriptError.warningFlag,
+                 /* category*/ "chrome javascript");
       Services.console.logMessage(error);
 
       if (Preferences.get("dom.ipc.shims.dumpWarnings", false)) {
         dump(message + "\n");
         while (stack) {
           dump(stack + "\n");
           stack = stack.caller;
         }
--- a/toolkit/components/addoncompat/Prefetcher.jsm
+++ b/toolkit/components/addoncompat/Prefetcher.jsm
@@ -96,28 +96,28 @@ function objAddr(obj)
 /*
   if (!isPrimitive(obj)) {
     return String(obj) + "[" + Cu.getJSTestingFunctions().objectAddress(obj) + "]";
   }
   return String(obj);
 */
 }
 
-function log(/*...args*/)
+function log(/* ...args*/)
 {
 /*
   for (let arg of args) {
     dump(arg);
     dump(" ");
   }
   dump("\n");
 */
 }
 
-function logPrefetch(/*kind, value1, component, value2*/)
+function logPrefetch(/* kind, value1, component, value2*/)
 {
 /*
   log("prefetching", kind, objAddr(value1) + "." + component, "=", objAddr(value2));
 */
 }
 
 /*
  * All the Op classes (representing Datalog rules) have the same interface:
--- a/toolkit/components/addoncompat/tests/addon/bootstrap.js
+++ b/toolkit/components/addoncompat/tests/addon/bootstrap.js
@@ -59,17 +59,17 @@ function testContentWindow()
       ok(browser.contentWindow, "contentWindow is defined");
       ok(browser.contentDocument, "contentWindow is defined");
       is(gWin.content, browser.contentWindow, "content === contentWindow");
       ok(browser.webNavigation.sessionHistory, "sessionHistory is defined");
 
       ok(browser.contentDocument.getElementById("link"), "link present in document");
 
       // FIXME: Waiting on bug 1073631.
-      //is(browser.contentWindow.wrappedJSObject.global, 3, "global available on document");
+      // is(browser.contentWindow.wrappedJSObject.global, 3, "global available on document");
 
       removeTab(tab, resolve);
     });
   });
 }
 
 // Test for bug 1060046 and bug 1072607. We want to make sure that
 // adding and removing listeners works as expected.
--- a/toolkit/components/asyncshutdown/nsAsyncShutdown.js
+++ b/toolkit/components/asyncshutdown/nsAsyncShutdown.js
@@ -131,17 +131,17 @@ nsAsyncShutdownClient.prototype = {
     return true;
   },
   get jsclient() {
     return this._moduleClient;
   },
   get name() {
     return this._moduleClient.name;
   },
-  addBlocker: function(/*nsIAsyncShutdownBlocker*/ xpcomBlocker,
+  addBlocker: function(/* nsIAsyncShutdownBlocker*/ xpcomBlocker,
       fileName, lineNumber, stack) {
     // We need a Promise-based function with the same behavior as
     // `xpcomBlocker`. Furthermore, to support `removeBlocker`, we
     // need to ensure that we always get the same Promise-based
     // function if we call several `addBlocker`/`removeBlocker` several
     // times with the same `xpcomBlocker`.
     //
     // Ideally, this should be done with a WeakMap() with xpcomBlocker
--- a/toolkit/components/contentprefs/nsContentPrefService.js
+++ b/toolkit/components/contentprefs/nsContentPrefService.js
@@ -44,17 +44,17 @@ cache.set = function CPS_cache_set(group
         break;
     }
   }
 };
 
 const privModeStorage = new ContentPrefStore();
 
 ContentPrefService.prototype = {
-  //**************************************************************************//
+  //* *************************************************************************//
   // XPCOM Plumbing
 
   classID: Components.ID("{e3f772f3-023f-4b32-b074-36cf0fd5d414}"),
 
   QueryInterface: function CPS_QueryInterface(iid) {
     let supportedIIDs = [
       Ci.nsIContentPrefService,
       Ci.nsISupports,
@@ -67,17 +67,17 @@ ContentPrefService.prototype = {
         Cu.import("resource://gre/modules/ContentPrefService2.jsm", s);
         this._contentPrefService2 = new s.ContentPrefService2(this);
       }
       return this._contentPrefService2;
     }
     throw Cr.NS_ERROR_NO_INTERFACE;
   },
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Convenience Getters
 
   // Observer Service
   __observerSvc: null,
   get _observerSvc() {
     if (!this.__observerSvc)
       this.__observerSvc = Cc["@mozilla.org/observer-service;1"].
                            getService(Ci.nsIObserverService);
@@ -98,17 +98,17 @@ ContentPrefService.prototype = {
   get _prefSvc() {
     if (!this.__prefSvc)
       this.__prefSvc = Cc["@mozilla.org/preferences-service;1"].
                        getService(Ci.nsIPrefBranch);
     return this.__prefSvc;
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Destruction
 
   _destroy: function ContentPrefService__destroy() {
     this._observerSvc.removeObserver(this, "xpcom-shutdown");
     this._observerSvc.removeObserver(this, "last-pb-context-exited");
 
     // Finalize statements which may have been used asynchronously.
     // FIXME(696499): put them in an object cache like other components.
@@ -186,38 +186,38 @@ ContentPrefService.prototype = {
     delete this._genericObservers;
     delete this.__consoleSvc;
     delete this.__grouper;
     delete this.__observerSvc;
     delete this.__prefSvc;
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // nsIObserver
 
   observe: function ContentPrefService_observe(subject, topic, data) {
     switch (topic) {
       case "xpcom-shutdown":
         this._destroy();
         break;
       case "last-pb-context-exited":
         this._privModeStorage.removeAll();
         break;
     }
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // in-memory cache and private-browsing stores
 
   _cache: cache,
   _privModeStorage: privModeStorage,
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // nsIContentPrefService
 
   getPref: function ContentPrefService_getPref(aGroup, aName, aContext, aCallback) {
     warnDeprecated();
 
     if (!aName)
       throw Components.Exception("aName cannot be null or an empty string",
                                  Cr.NS_ERROR_ILLEGAL_VALUE);
@@ -564,17 +564,17 @@ ContentPrefService.prototype = {
   },
 
   get DBConnection() {
     warnDeprecated();
     return this._dbConnection;
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Data Retrieval & Modification
 
   __stmtSelectPref: null,
   get _stmtSelectPref() {
     if (!this.__stmtSelectPref)
       this.__stmtSelectPref = this._dbCreateStatement(`
         SELECT prefs.value AS value
         FROM prefs
@@ -992,17 +992,17 @@ ContentPrefService.prototype = {
     if (typeof global != "undefined") {
       prefs.setProperty(null, global);
     }
 
     return prefs;
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Database Creation & Access
 
   _dbVersion: 4,
 
   _dbSchema: {
     tables: {
       groups:     "id           INTEGER PRIMARY KEY, \
                    name         TEXT NOT NULL",
@@ -1256,23 +1256,23 @@ function warnDeprecated() {
                      "https://developer.mozilla.org/en-US/docs/XPCOM_Interface_Reference/nsIContentPrefService2",
                      Components.stack.caller);
 }
 
 
 function HostnameGrouper() {}
 
 HostnameGrouper.prototype = {
-  //**************************************************************************//
+  //* *************************************************************************//
   // XPCOM Plumbing
 
   classID:          Components.ID("{8df290ae-dcaa-4c11-98a5-2429a4dc97bb}"),
   QueryInterface:   XPCOMUtils.generateQI([Ci.nsIContentURIGrouper]),
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // nsIContentURIGrouper
 
   group: function HostnameGrouper_group(aURI) {
     var group;
 
     try {
       // Accessing the host property of the URI will throw an exception
       // if the URI is of a type that doesn't have a host property.
@@ -1331,13 +1331,13 @@ AsyncStatement.prototype = {
             aReason == Ci.mozIStorageStatementCallback.REASON_FINISHED)
           this._callback.onResult(undefined);
       },
       handleError: function(aError) {}
     });
   }
 };
 
-//****************************************************************************//
+//* ***************************************************************************//
 // XPCOM Plumbing
 
 var components = [ContentPrefService, HostnameGrouper];
 this.NSGetFactory = XPCOMUtils.generateNSGetFactory(components);
--- a/toolkit/components/contentprefs/tests/unit/head_contentPrefs.js
+++ b/toolkit/components/contentprefs/tests/unit/head_contentPrefs.js
@@ -11,17 +11,17 @@ var Cu = Components.utils;
 
 Cu.import('resource://gre/modules/Services.jsm');
 Cu.import('resource://gre/modules/ContentPrefInstance.jsm');
 
 const CONTENT_PREFS_DB_FILENAME = "content-prefs.sqlite";
 const CONTENT_PREFS_BACKUP_DB_FILENAME = "content-prefs.sqlite.corrupt";
 
 var ContentPrefTest = {
-  //**************************************************************************//
+  //* *************************************************************************//
   // Convenience Getters
 
   __dirSvc: null,
   get _dirSvc() {
     if (!this.__dirSvc)
       this.__dirSvc = Cc["@mozilla.org/file/directory_service;1"].
                       getService(Ci.nsIProperties);
     return this.__dirSvc;
@@ -39,45 +39,45 @@ var ContentPrefTest = {
   get _ioSvc() {
     if (!this.__ioSvc)
       this.__ioSvc = Cc["@mozilla.org/network/io-service;1"].
                      getService(Ci.nsIIOService);
     return this.__ioSvc;
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // nsISupports
 
   interfaces: [Ci.nsIDirectoryServiceProvider, Ci.nsISupports],
 
   QueryInterface: function ContentPrefTest_QueryInterface(iid) {
     if (!this.interfaces.some( function(v) { return iid.equals(v) } ))
       throw Cr.NS_ERROR_NO_INTERFACE;
     return this;
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // nsIDirectoryServiceProvider
 
   getFile: function ContentPrefTest_getFile(property, persistent) {
     persistent.value = true;
 
     if (property == "ProfD")
       return this._dirSvc.get("CurProcD", Ci.nsIFile);
 
     // This causes extraneous errors to show up in the log when the directory
     // service asks us first for CurProcD and MozBinD.  I wish there was a way
     // to suppress those errors.
     throw Cr.NS_ERROR_FAILURE;
   },
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Utilities
 
   getURI: function ContentPrefTest_getURI(spec) {
     return this._ioSvc.newURI(spec, null, null);
   },
 
   /**
    * Get the profile directory.
--- a/toolkit/components/contentprefs/tests/unit/test_contentPrefs.js
+++ b/toolkit/components/contentprefs/tests/unit/test_contentPrefs.js
@@ -1,14 +1,14 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 function run_test() {
-  //**************************************************************************//
+  //* *************************************************************************//
   // Database Creation, Schema Migration, and Backup
 
   // Note: in these tests we use createInstance instead of getService
   // so we can instantiate the service multiple times and make it run
   // its database initialization code each time.
 
   // Create a new database.
   {
@@ -107,26 +107,26 @@ function run_test() {
 
   var uri = ContentPrefTest.getURI("http://www.example.com/");
 
   // Make sure disk synchronization checking is turned off by default.
   var statement = cps.DBConnection.createStatement("PRAGMA synchronous");
   statement.executeStep();
   do_check_eq(0, statement.getInt32(0));
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Nonexistent Pref
 
   do_check_eq(cps.getPref(uri, "test.nonexistent.getPref"), undefined);
   do_check_eq(cps.setPref(uri, "test.nonexistent.setPref", 5), undefined);
   do_check_false(cps.hasPref(uri, "test.nonexistent.hasPref"));
   do_check_eq(cps.removePref(uri, "test.nonexistent.removePref"), undefined);
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Existing Pref
 
   cps.setPref(uri, "test.existing", 5);
 
   // getPref should return the pref value
   do_check_eq(cps.getPref(uri, "test.existing"), 5);
 
   // setPref should return undefined and change the value of the pref
@@ -136,17 +136,17 @@ function run_test() {
   // hasPref should return true
   do_check_true(cps.hasPref(uri, "test.existing"));
 
   // removePref should return undefined and remove the pref
   do_check_eq(cps.removePref(uri, "test.existing"), undefined);
   do_check_false(cps.hasPref(uri, "test.existing"));
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Round-Trip Data Integrity
 
   // Make sure pref values remain the same from setPref to getPref.
 
   cps.setPref(uri, "test.data-integrity.integer", 5);
   do_check_eq(cps.getPref(uri, "test.data-integrity.integer"), 5);
 
   cps.setPref(uri, "test.data-integrity.float", 5.5);
@@ -179,33 +179,33 @@ function run_test() {
 
   do_check_false(cps.hasPref(uri, "test.data-integrity.integer"));
   do_check_false(cps.hasPref(uri, "test.data-integrity.float"));
   do_check_false(cps.hasPref(uri, "test.data-integrity.boolean"));
   do_check_false(cps.hasPref(uri, "test.data-integrity.string"));
   do_check_false(cps.hasPref(uri, "test.data-integrity.null"));
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // getPrefs
 
   cps.setPref(uri, "test.getPrefs.a", 1);
   cps.setPref(uri, "test.getPrefs.b", 2);
   cps.setPref(uri, "test.getPrefs.c", 3);
 
   var prefs = cps.getPrefs(uri);
   do_check_true(prefs.hasKey("test.getPrefs.a"));
   do_check_eq(prefs.get("test.getPrefs.a"), 1);
   do_check_true(prefs.hasKey("test.getPrefs.b"));
   do_check_eq(prefs.get("test.getPrefs.b"), 2);
   do_check_true(prefs.hasKey("test.getPrefs.c"));
   do_check_eq(prefs.get("test.getPrefs.c"), 3);
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Site-Specificity
 
   // These are all different sites, and setting a pref for one of them
   // shouldn't set it for the others.
   var uri1 = ContentPrefTest.getURI("http://www.domain1.com/");
   var uri2 = ContentPrefTest.getURI("http://foo.domain1.com/");
   var uri3 = ContentPrefTest.getURI("http://domain1.com/");
   var uri4 = ContentPrefTest.getURI("http://www.domain2.com/");
@@ -226,17 +226,17 @@ function run_test() {
   do_check_false(cps.hasPref(uri4, "test.site-specificity.uri3"));
 
   cps.setPref(uri4, "test.site-specificity.uri4", 5);
   do_check_false(cps.hasPref(uri1, "test.site-specificity.uri4"));
   do_check_false(cps.hasPref(uri2, "test.site-specificity.uri4"));
   do_check_false(cps.hasPref(uri3, "test.site-specificity.uri4"));
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Observers
 
   var specificObserver = {
     interfaces: [Ci.nsIContentPrefObserver, Ci.nsISupports],
 
     QueryInterface: function ContentPrefTest_QueryInterface(iid) {
       if (!this.interfaces.some( function(v) { return iid.equals(v) } ))
         throw Cr.NS_ERROR_NO_INTERFACE;
@@ -328,17 +328,17 @@ function run_test() {
   cps.setPref(uri, "test.observer.1", "test value");
   cps.removePref(uri, "test.observer.1", "test value");
   do_check_eq(specificObserver.numTimesSetCalled, 1);
   do_check_eq(genericObserver.numTimesSetCalled, 4);
   do_check_eq(specificObserver.numTimesRemovedCalled, 1);
   do_check_eq(genericObserver.numTimesRemovedCalled, 3);
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Get/Remove Prefs By Name
 
   {
     var anObserver = {
       interfaces: [Ci.nsIContentPrefObserver, Ci.nsISupports],
 
       QueryInterface: function ContentPrefTest_QueryInterface(iid) {
         if (!this.interfaces.some( function(v) { return iid.equals(v) } ))
@@ -416,17 +416,17 @@ function run_test() {
 
     // Clean up after ourselves
     cps.removePref(uri1, "test.byname.2");
     cps.removePref(uri3, "test.byname.3");
     cps.removePref(null, "test.byname.2");
   }
 
 
-  //**************************************************************************//
+  //* *************************************************************************//
   // Clear Private Data Pref Removal
 
   {
     let uri1 = ContentPrefTest.getURI("http://www.domain1.com/");
     let uri2 = ContentPrefTest.getURI("http://www.domain2.com/");
     let uri3 = ContentPrefTest.getURI("http://www.domain3.com/");
 
     let dbConnection = cps.DBConnection;
--- a/toolkit/components/cookie/content/cookieAcceptDialog.js
+++ b/toolkit/components/cookie/content/cookieAcceptDialog.js
@@ -35,17 +35,17 @@ function onload()
 
   // hook up button icons where implemented
   document.getElementById("ok").setAttribute("icon", "accept");
   document.getElementById("cancel").setAttribute("icon", "cancel");
   document.getElementById("disclosureButton").setAttribute("icon", "properties");
 
   cookieBundle = document.getElementById("cookieBundle");
 
-  //cache strings
+  // cache strings
   if (!showDetails) {
     showDetails = cookieBundle.getString('showDetails');
   }
   if (!hideDetails) {
     hideDetails = cookieBundle.getString('hideDetails');
   }
   detailsAccessKey = cookieBundle.getString('detailsAccessKey');
 
--- a/toolkit/components/crashes/tests/xpcshell/test_crash_manager.js
+++ b/toolkit/components/crashes/tests/xpcshell/test_crash_manager.js
@@ -286,17 +286,17 @@ add_task(function* test_main_crash_event
 add_task(function* test_crash_submission_event_file() {
   let m = yield getManager();
   yield m.createEventsFile("1", "crash.main.2", DUMMY_DATE, "crash1");
   yield m.createEventsFile("1-submission", "crash.submission.1", DUMMY_DATE_2,
                            "crash1\nfalse\n");
 
   // The line below has been intentionally commented out to make sure that
   // the crash record is created when one does not exist.
-  //yield m.createEventsFile("2", "crash.main.1", DUMMY_DATE, "crash2");
+  // yield m.createEventsFile("2", "crash.main.1", DUMMY_DATE, "crash2");
   yield m.createEventsFile("2-submission", "crash.submission.1", DUMMY_DATE_2,
                            "crash2\ntrue\nbp-2");
   let count = yield m.aggregateEventsFiles();
   Assert.equal(count, 3);
 
   let crashes = yield m.getCrashes();
   Assert.equal(crashes.length, 2);
 
--- a/toolkit/components/downloads/nsDownloadManagerUI.js
+++ b/toolkit/components/downloads/nsDownloadManagerUI.js
@@ -1,33 +1,33 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
 
-////////////////////////////////////////////////////////////////////////////////
-//// Constants
+// //////////////////////////////////////////////////////////////////////////////
+// // Constants
 
 const Cc = Components.classes;
 const Ci = Components.interfaces;
 const Cr = Components.results;
 const DOWNLOAD_MANAGER_URL = "chrome://mozapps/content/downloads/downloads.xul";
 const PREF_FLASH_COUNT = "browser.download.manager.flashCount";
 
-////////////////////////////////////////////////////////////////////////////////
-//// nsDownloadManagerUI class
+// //////////////////////////////////////////////////////////////////////////////
+// // nsDownloadManagerUI class
 
 function nsDownloadManagerUI() {}
 
 nsDownloadManagerUI.prototype = {
   classID: Components.ID("7dfdf0d1-aff6-4a34-bad1-d0fe74601642"),
 
-  //////////////////////////////////////////////////////////////////////////////
-  //// nsIDownloadManagerUI
+  // ////////////////////////////////////////////////////////////////////////////
+  // // nsIDownloadManagerUI
 
   show: function show(aWindowContext, aDownload, aReason, aUsePrivateUI)
   {
     if (!aReason)
       aReason = Ci.nsIDownloadManagerUI.REASON_USER_INTERACTED;
 
     // First we see if it is already visible
     let window = this.recentWindow;
@@ -85,29 +85,29 @@ nsDownloadManagerUI.prototype = {
     try {
       flashCount = prefs.getIntPref(PREF_FLASH_COUNT);
     } catch (e) { }
 
     var win = this.recentWindow.QueryInterface(Ci.nsIDOMChromeWindow);
     win.getAttentionWithCycleCount(flashCount);
   },
 
-  //////////////////////////////////////////////////////////////////////////////
-  //// nsDownloadManagerUI
+  // ////////////////////////////////////////////////////////////////////////////
+  // // nsDownloadManagerUI
 
   get recentWindow() {
     var wm = Cc["@mozilla.org/appshell/window-mediator;1"].
              getService(Ci.nsIWindowMediator);
     return wm.getMostRecentWindow("Download:Manager");
   },
 
-  //////////////////////////////////////////////////////////////////////////////
-  //// nsISupports
+  // ////////////////////////////////////////////////////////////////////////////
+  // // nsISupports
 
   QueryInterface: XPCOMUtils.generateQI([Ci.nsIDownloadManagerUI])
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// Module
+// //////////////////////////////////////////////////////////////////////////////
+// // Module
 
 var components = [nsDownloadManagerUI];
 this.NSGetFactory = XPCOMUtils.generateNSGetFactory(components);
 
--- a/toolkit/components/downloads/test/unit/tail_download_manager.js
+++ b/toolkit/components/downloads/test/unit/tail_download_manager.js
@@ -5,18 +5,18 @@
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 /**
  * Provides infrastructure for automated download components tests.
  */
 
 "use strict";
 
-////////////////////////////////////////////////////////////////////////////////
-//// Termination functions common to all tests
+// //////////////////////////////////////////////////////////////////////////////
+// // Termination functions common to all tests
 
 add_task(function* test_common_terminate()
 {
   // Stop the HTTP server.  We must do this inside a task in "tail.js" until the
   // xpcshell testing framework supports asynchronous termination functions.
   let deferred = Promise.defer();
   gHttpServer.stop(deferred.resolve);
   yield deferred.promise;
--- a/toolkit/components/downloads/test/unit/test_app_rep_maclinux.js
+++ b/toolkit/components/downloads/test/unit/test_app_rep_maclinux.js
@@ -3,18 +3,18 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 /**
  * This file tests signature extraction using Windows Authenticode APIs of
  * downloaded files.
  */
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "NetUtil",
                                   "resource://gre/modules/NetUtil.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "Promise",
                                   "resource://gre/modules/Promise.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "Task",
@@ -59,18 +59,18 @@ function registerTableUpdate(aTable, aFi
     do_print("Length of " + aFilename + ": " + contents.length);
     response.setHeader("Content-Type",
                        "application/vnd.google.safebrowsing-update", false);
     response.setStatusLine(request.httpVersion, 200, "OK");
     response.bodyOutputStream.write(contents, contents.length);
   });
 }
 
-////////////////////////////////////////////////////////////////////////////////
-//// Tests
+// //////////////////////////////////////////////////////////////////////////////
+// // Tests
 
 function run_test()
 {
   run_next_test();
 }
 
 add_task(function test_setup()
 {
--- a/toolkit/components/downloads/test/unit/test_app_rep_windows.js
+++ b/toolkit/components/downloads/test/unit/test_app_rep_windows.js
@@ -3,18 +3,18 @@
 /* Any copyright is dedicated to the Public Domain.
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 /**
  * This file tests signature extraction using Windows Authenticode APIs of
  * downloaded files.
  */
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "FileUtils",
                                   "resource://gre/modules/FileUtils.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "NetUtil",
                                   "resource://gre/modules/NetUtil.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "Promise",
@@ -155,18 +155,18 @@ function registerTableUpdate(aTable, aFi
     do_print("Length of " + aFilename + ": " + contents.length);
     response.setHeader("Content-Type",
                        "application/vnd.google.safebrowsing-update", false);
     response.setStatusLine(request.httpVersion, 200, "OK");
     response.bodyOutputStream.write(contents, contents.length);
   });
 }
 
-////////////////////////////////////////////////////////////////////////////////
-//// Tests
+// //////////////////////////////////////////////////////////////////////////////
+// // Tests
 
 function run_test()
 {
   run_next_test();
 }
 
 add_task(function* test_setup()
 {
--- a/toolkit/components/exthelper/extApplication.js
+++ b/toolkit/components/exthelper/extApplication.js
@@ -1,23 +1,23 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
 Components.utils.import("resource://gre/modules/AddonManager.jsm");
 
-//=================================================
+// =================================================
 // Console constructor
 function Console() {
   this._console = Components.classes["@mozilla.org/consoleservice;1"]
                             .getService(Ci.nsIConsoleService);
 }
 
-//=================================================
+// =================================================
 // Console implementation
 Console.prototype = {
   log: function cs_log(aMsg) {
     this._console.logStringMessage(aMsg);
   },
 
   open: function cs_open() {
     var wMediator = Components.classes["@mozilla.org/appshell/window-mediator;1"]
@@ -33,24 +33,24 @@ Console.prototype = {
       console.focus();
     }
   },
 
   QueryInterface: XPCOMUtils.generateQI([Ci.extIConsole])
 };
 
 
-//=================================================
+// =================================================
 // EventItem constructor
 function EventItem(aType, aData) {
   this._type = aType;
   this._data = aData;
 }
 
-//=================================================
+// =================================================
 // EventItem implementation
 EventItem.prototype = {
   _cancel: false,
 
   get type() {
     return this._type;
   },
 
@@ -61,24 +61,24 @@ EventItem.prototype = {
   preventDefault: function ei_pd() {
     this._cancel = true;
   },
 
   QueryInterface: XPCOMUtils.generateQI([Ci.extIEventItem])
 };
 
 
-//=================================================
+// =================================================
 // Events constructor
 function Events(notifier) {
   this._listeners = [];
   this._notifier = notifier;
 }
 
-//=================================================
+// =================================================
 // Events implementation
 Events.prototype = {
   addListener: function evts_al(aEvent, aListener) {
     function hasFilter(element) {
       return element.event == aEvent && element.listener == aListener;
     }
 
     if (this._listeners.some(hasFilter))
@@ -114,17 +114,17 @@ Events.prototype = {
     });
 
     return !eventItem._cancel;
   },
 
   QueryInterface: XPCOMUtils.generateQI([Ci.extIEvents])
 };
 
-//=================================================
+// =================================================
 // PreferenceObserver (internal class)
 //
 // PreferenceObserver is a global singleton which watches the browser's
 // preferences and sends you events when things change.
 
 function PreferenceObserver() {
   this._observersDict = {};
 }
@@ -188,17 +188,17 @@ PreferenceObserver.prototype = {
       delete this._observersDict[root][aDomain];
       if (Object.keys(this._observersDict[root]).length == 0) {
         delete this._observersDict[root];
       }
     }
   }
 };
 
-//=================================================
+// =================================================
 // PreferenceBranch constructor
 function PreferenceBranch(aBranch) {
   if (!aBranch)
     aBranch = "";
 
   this._root = aBranch;
   this._prefs = Components.classes["@mozilla.org/preferences-service;1"]
                           .getService(Ci.nsIPrefService)
@@ -214,17 +214,17 @@ function PreferenceBranch(aBranch) {
     },
     removeListener: function pb_rl(aEvent, aListener) {
       gPreferenceObserver.removeListener(prefs, "", aEvent, aListener);
     },
     QueryInterface: XPCOMUtils.generateQI([Ci.extIEvents])
   };
 }
 
-//=================================================
+// =================================================
 // PreferenceBranch implementation
 PreferenceBranch.prototype = {
   get root() {
     return this._root;
   },
 
   get all() {
     return this.find({});
@@ -301,17 +301,17 @@ PreferenceBranch.prototype = {
   reset: function prefs_reset() {
     this._prefs.resetBranch("");
   },
 
   QueryInterface: XPCOMUtils.generateQI([Ci.extIPreferenceBranch])
 };
 
 
-//=================================================
+// =================================================
 // Preference constructor
 function Preference(aName, aBranch) {
   this._name = aName;
   this._branch = aBranch;
 
   var self = this;
   this._events = {
     addListener: function pref_al(aEvent, aListener) {
@@ -319,17 +319,17 @@ function Preference(aName, aBranch) {
     },
     removeListener: function pref_rl(aEvent, aListener) {
       gPreferenceObserver.removeListener(self._branch._prefs, self._name, aEvent, aListener);
     },
     QueryInterface: XPCOMUtils.generateQI([Ci.extIEvents])
   };
 }
 
-//=================================================
+// =================================================
 // Preference implementation
 Preference.prototype = {
   get name() {
     return this._name;
   },
 
   get type() {
     var value = "";
@@ -381,24 +381,24 @@ Preference.prototype = {
   reset: function pref_reset() {
     this.branch._prefs.clearUserPref(this.name);
   },
 
   QueryInterface: XPCOMUtils.generateQI([Ci.extIPreference])
 };
 
 
-//=================================================
+// =================================================
 // SessionStorage constructor
 function SessionStorage() {
   this._storage = {};
   this._events = new Events();
 }
 
-//=================================================
+// =================================================
 // SessionStorage implementation
 SessionStorage.prototype = {
   get events() {
     return this._events;
   },
 
   has: function ss_has(aName) {
     return this._storage.hasOwnProperty(aName);
@@ -411,30 +411,30 @@ SessionStorage.prototype = {
 
   get: function ss_get(aName, aDefaultValue) {
     return this.has(aName) ? this._storage[aName] : aDefaultValue;
   },
 
   QueryInterface : XPCOMUtils.generateQI([Ci.extISessionStorage])
 };
 
-//=================================================
+// =================================================
 // ExtensionObserver constructor (internal class)
 //
 // ExtensionObserver is a global singleton which watches the browser's
 // extensions and sends you events when things change.
 
 function ExtensionObserver() {
   this._eventsDict = {};
 
   AddonManager.addAddonListener(this);
   AddonManager.addInstallListener(this);
 }
 
-//=================================================
+// =================================================
 // ExtensionObserver implementation (internal class)
 ExtensionObserver.prototype = {
   onDisabling: function eo_onDisabling(addon, needsRestart) {
     this._dispatchEvent(addon.id, "disable");
   },
 
   onEnabling: function eo_onEnabling(addon, needsRestart) {
     this._dispatchEvent(addon.id, "enable");
@@ -475,17 +475,17 @@ ExtensionObserver.prototype = {
   _dispatchEvent: function eo_dispatchEvent(aId, aEvent) {
     var events = this._eventsDict[aId];
     if (events) {
       events.dispatch(aEvent, aId);
     }
   }
 };
 
-//=================================================
+// =================================================
 // Extension constructor
 function Extension(aItem) {
   this._item = aItem;
   this._firstRun = false;
   this._prefs = new PreferenceBranch("extensions." + this.id + ".");
   this._storage = new SessionStorage();
 
   let id = this.id;
@@ -501,17 +501,17 @@ function Extension(aItem) {
 
   var installPref = "install-event-fired";
   if (!this._prefs.has(installPref)) {
     this._prefs.setValue(installPref, true);
     this._firstRun = true;
   }
 }
 
-//=================================================
+// =================================================
 // Extension implementation
 Extension.prototype = {
   get id() {
     return this._item.id;
   },
 
   get name() {
     return this._item.name;
@@ -540,27 +540,27 @@ Extension.prototype = {
   get events() {
     return this._events;
   },
 
   QueryInterface: XPCOMUtils.generateQI([Ci.extIExtension])
 };
 
 
-//=================================================
+// =================================================
 // Extensions constructor
 function Extensions(addons) {
   this._cache = {};
 
   addons.forEach(function (addon) {
     this._cache[addon.id] = new Extension(addon);
   }, this);
 }
 
-//=================================================
+// =================================================
 // Extensions implementation
 Extensions.prototype = {
   get all() {
     return this.find({});
   },
 
   // XXX: Disabled until we can figure out the wrapped object issues
   // id: "some@id" or /id/
@@ -578,28 +578,28 @@ Extensions.prototype = {
 
   get: function exts_get(aId) {
     return this.has(aId) ? this._cache[aId] : null;
   },
 
   QueryInterface: XPCOMUtils.generateQI([Ci.extIExtensions])
 };
 
-//=================================================
+// =================================================
 // Application globals
 
 var gExtensionObserver = new ExtensionObserver();
 var gPreferenceObserver = new PreferenceObserver();
 
-//=================================================
+// =================================================
 // extApplication constructor
 function extApplication() {
 }
 
-//=================================================
+// =================================================
 // extApplication implementation
 extApplication.prototype = {
   initToolkitHelpers: function extApp_initToolkitHelpers() {
     XPCOMUtils.defineLazyServiceGetter(this, "_info",
                                        "@mozilla.org/xre/app-info;1",
                                        "nsIXULAppInfo");
 
     this._obs = Cc["@mozilla.org/observer-service;1"].
--- a/toolkit/components/feeds/FeedProcessor.js
+++ b/toolkit/components/feeds/FeedProcessor.js
@@ -43,17 +43,17 @@ const SAX_CONTRACTID = "@mozilla.org/sax
 const PARSERUTILS_CONTRACTID = "@mozilla.org/parserutils;1";
 
 
 var gIoService = null;
 
 const XMLNS = "http://www.w3.org/XML/1998/namespace";
 const RSS090NS = "http://my.netscape.com/rdf/simple/0.9/";
 
-/***** Some general utils *****/
+/** *** Some general utils *****/
 function strToURI(link, base) {
   base = base || null;
   if (!gIoService)
     gIoService = Cc[IO_CONTRACTID].getService(Ci.nsIIOService);
   try {
     return gIoService.newURI(link, null, base);
   }
   catch (e) {
@@ -1033,17 +1033,17 @@ function FeedElementInfo(fieldName, feed
  * want to include in our object model, but we do need to keep track
  * of during parsing.
  */
 function WrapperElementInfo(fieldName) {
   this.isWrapper = true;
   this.fieldName = fieldName;
 }
 
-/***** The Processor *****/
+/** *** The Processor *****/
 function FeedProcessor() {
   this._reader = Cc[SAX_CONTRACTID].createInstance(Ci.nsISAXXMLReader);
   this._buf =  "";
   this._feed = Cc[BAG_CONTRACTID].createInstance(Ci.nsIWritablePropertyBag2);
   this._handlerStack = [];
   this._xmlBaseStack = []; // sparse array keyed to nesting depth
   this._depth = 0;
   this._state = "START";
@@ -1071,31 +1071,31 @@ function FeedProcessor() {
                           "atom03:title":"text",
                           "atom03:tagline":"text",
                           "atom03:summary":"text",
                           "atom03:content":"text"};
   this._stack = [];
 
   this._trans = {
     "START": {
-      //If we hit a root RSS element, treat as RSS2.
+      // If we hit a root RSS element, treat as RSS2.
       "rss": new FeedElementInfo("RSS2", "rss2"),
 
       // If we hit an RDF element, if could be RSS1, but we can't
       // verify that until we hit a rss1:channel element.
       "rdf:RDF": new WrapperElementInfo("RDF"),
 
       // If we hit a Atom 1.0 element, treat as Atom 1.0.
       "atom:feed": new FeedElementInfo("Atom", "atom"),
 
       // Treat as Atom 0.3
       "atom03:feed": new FeedElementInfo("Atom03", "atom03"),
     },
 
-    /********* RSS2 **********/
+    /** ******* RSS2 **********/
     "IN_RSS2": {
       "channel": new WrapperElementInfo("channel")
     },
 
     "IN_CHANNEL": {
       "item": new ElementInfo("items", Cc[ENTRY_CONTRACTID], null, true),
       "managingEditor": new ElementInfo("authors", Cc[PERSON_CONTRACTID],
                                         rssAuthor, true),
@@ -1140,17 +1140,17 @@ function FeedProcessor() {
       "hour": new ElementInfo("hours", null, rssArrayElement, true)
     },
 
     "IN_MEDIAGROUP": {
       "media:content": new ElementInfo("mediacontent", null, null, true),
       "media:thumbnail": new ElementInfo("mediathumbnail", null, null, true)
     },
 
-    /********* RSS1 **********/
+    /** ******* RSS1 **********/
     "IN_RDF": {
       // If we hit a rss1:channel, we can verify that we have RSS1
       "rss1:channel": new FeedElementInfo("rdf_channel", "rss1"),
       "rss1:image": new ElementInfo("image", null, null, false),
       "rss1:textinput": new ElementInfo("textInput", null, null, false),
       "rss1:item": new ElementInfo("items", Cc[ENTRY_CONTRACTID], null, true),
     },
 
@@ -1161,17 +1161,17 @@ function FeedProcessor() {
       "dc:creator": new ElementInfo("authors", Cc[PERSON_CONTRACTID],
                                     rssAuthor, true),
       "dc:author": new ElementInfo("authors", Cc[PERSON_CONTRACTID],
                                    rssAuthor, true),
       "dc:contributor": new ElementInfo("contributors", Cc[PERSON_CONTRACTID],
                                          rssAuthor, true),
     },
 
-    /********* ATOM 1.0 **********/
+    /** ******* ATOM 1.0 **********/
     "IN_ATOM": {
       "atom:author": new ElementInfo("authors", Cc[PERSON_CONTRACTID],
                                      null, true),
       "atom:generator": new ElementInfo("generator", Cc[GENERATOR_CONTRACTID],
                                         atomGenerator, false),
       "atom:contributor": new ElementInfo("contributors",  Cc[PERSON_CONTRACTID],
                                           null, true),
       "atom:link": new ElementInfo("links", null, null, true),
@@ -1183,17 +1183,17 @@ function FeedProcessor() {
     "IN_ENTRIES": {
       "atom:author": new ElementInfo("authors", Cc[PERSON_CONTRACTID],
                                      null, true),
       "atom:contributor": new ElementInfo("contributors", Cc[PERSON_CONTRACTID],
                                           null, true),
       "atom:link": new ElementInfo("links", null, null, true),
     },
 
-    /********* ATOM 0.3 **********/
+    /** ******* ATOM 0.3 **********/
     "IN_ATOM03": {
       "atom03:author": new ElementInfo("authors", Cc[PERSON_CONTRACTID],
                                        null, true),
       "atom03:contributor": new ElementInfo("contributors",
                                             Cc[PERSON_CONTRACTID],
                                             null, true),
       "atom03:link": new ElementInfo("links", null, null, true),
       "atom03:entry": new ElementInfo("atom03_entries", Cc[ENTRY_CONTRACTID],
@@ -1311,25 +1311,25 @@ FeedProcessor.prototype = {
 
   // We only care about fatal errors. When this happens, we may have
   // parsed through the feed metadata and some number of entries. The
   // listener can still show some of that data if it wants, and we'll
   // set the bozo bit to indicate we were unable to parse all the way
   // through.
   fatalError: function FP_reportError() {
     this._result.bozo = true;
-    //XXX need to QI to FeedProgressListener
+    // XXX need to QI to FeedProgressListener
     if (!this._haveSentResult)
       this._sendResult();
   },
 
   // nsISAXContentHandler
 
   startDocument: function FP_startDocument() {
-    //LOG("----------");
+    // LOG("----------");
   },
 
   endDocument: function FP_endDocument() {
     if (!this._haveSentResult)
       this._sendResult();
   },
 
   // The transitions defined above identify elements that contain more
@@ -1359,17 +1359,17 @@ FeedProcessor.prototype = {
   // formats allow this by default, and I don't of any extension that
   // works this way.
   //
   startElement: function FP_startElement(uri, localName, qName, attributes) {
     this._buf = "";
     ++this._depth;
     var elementInfo;
 
-    //LOG("<" + localName + ">");
+    // LOG("<" + localName + ">");
 
     // Check for xml:base
     var base = attributes.getValueFromName(XMLNS, "base");
     if (base) {
       this._xmlBaseStack[this._depth] =
         strToURI(base, this._xmlBaseStack[this._xmlBaseStack.length - 1]);
     }
 
@@ -1450,17 +1450,17 @@ FeedProcessor.prototype = {
 
   // In the endElement handler, we decrement the stack and look
   // for cleanup/transition functions to execute. The second part
   // of the state transition works as above in startElement, but
   // the state we're looking for is prefixed with an underscore
   // to distinguish endElement events from startElement events.
   endElement:  function FP_endElement(uri, localName, qName) {
     var elementInfo = this._handlerStack[this._depth];
-    //LOG("</" + localName + ">");
+    // LOG("</" + localName + ">");
     if (elementInfo && !elementInfo.isWrapper)
       this._closeComplexElement(elementInfo);
 
     // cut down xml:base context
     if (this._xmlBaseStack.length == this._depth + 1)
       this._xmlBaseStack = this._xmlBaseStack.slice(0, this._depth);
 
     // our new state is whatever is at the top of the stack now
--- a/toolkit/components/filepicker/content/filepicker.js
+++ b/toolkit/components/filepicker/content/filepicker.js
@@ -233,17 +233,17 @@ function selectOnOK()
     var file = fileList[curFileIndex].QueryInterface(nsIFile);
 
     // try to normalize - if this fails we will ignore the error
     // because we will notice the
     // error later and show a fitting error alert.
     try {
       file.normalize();
     } catch (e) {
-      //promptService.alert(window, "Problem", "normalize failed, continuing");
+      // promptService.alert(window, "Problem", "normalize failed, continuing");
     }
 
     var fileExists = file.exists();
 
     if (!fileExists && (filePickerMode == nsIFilePicker.modeOpen ||
                         filePickerMode == nsIFilePicker.modeOpenMultiple)) {
       showErrorDialog("errorOpenFileDoesntExistTitle",
                       "errorOpenFileDoesntExistMessage",
--- a/toolkit/components/filepicker/nsFilePicker.js
+++ b/toolkit/components/filepicker/nsFilePicker.js
@@ -238,27 +238,27 @@ nsFilePicker.prototype = {
       }
       if (aFilePickerShownCallback) {
         aFilePickerShownCallback.done(result);
       }
     }.bind(this), Components.interfaces.nsIThread.DISPATCH_NORMAL);
   },
 
   show: function() {
-    var o = new Object();
+    var o = {};
     o.title = this.mTitle;
     o.mode = this.mMode;
     o.displayDirectory = this.mDisplayDirectory;
     o.defaultString = this.mDefaultString;
     o.filterIndex = this.mFilterIndex;
-    o.filters = new Object();
+    o.filters = {};
     o.filters.titles = this.mFilterTitles;
     o.filters.types = this.mFilters;
     o.allowURLs = this.mAllowURLs;
-    o.retvals = new Object();
+    o.retvals = {};
 
     var parent;
     if (this.mParentWindow) {
       parent = this.mParentWindow;
     } else if (typeof(window) == "object" && window != null) {
       parent = window;
     } else {
       try {
--- a/toolkit/components/jsdownloads/src/DownloadCore.jsm
+++ b/toolkit/components/jsdownloads/src/DownloadCore.jsm
@@ -45,18 +45,18 @@ this.EXPORTED_SYMBOLS = [
   "DownloadTarget",
   "DownloadError",
   "DownloadSaver",
   "DownloadCopySaver",
   "DownloadLegacySaver",
   "DownloadPDFSaver",
 ];
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 const Cc = Components.classes;
 const Ci = Components.interfaces;
 const Cu = Components.utils;
 const Cr = Components.results;
 
 Cu.import("resource://gre/modules/Integration.jsm");
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
@@ -137,18 +137,18 @@ function deserializeUnknownProperties(aO
 
 /**
  * This determines the minimum time interval between updates to the number of
  * bytes transferred, and is a limiting factor to the sequence of readings used
  * in calculating the speed of the download.
  */
 const kProgressUpdateIntervalMs = 400;
 
-////////////////////////////////////////////////////////////////////////////////
-//// Download
+// //////////////////////////////////////////////////////////////////////////////
+// // Download
 
 /**
  * Represents a single download, with associated state and actions.  This object
  * is transient, though it can be included in a DownloadList so that it can be
  * managed by the user interface and persisted across sessions.
  */
 this.Download = function ()
 {
@@ -1244,18 +1244,18 @@ Download.fromSerializable = function (aS
     property != "source" &&
     property != "target" &&
     property != "error" &&
     property != "saver");
 
   return download;
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadSource
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadSource
 
 /**
  * Represents the source of a download, for example a document or an URI.
  */
 this.DownloadSource = function () {}
 
 this.DownloadSource.prototype = {
   /**
@@ -1371,18 +1371,18 @@ this.DownloadSource.fromSerializable = f
 
     deserializeUnknownProperties(source, aSerializable, property =>
       property != "url" && property != "isPrivate" && property != "referrer");
   }
 
   return source;
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadTarget
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadTarget
 
 /**
  * Represents the target of a download, for example a file in the global
  * downloads directory, or a file in the system temporary directory.
  */
 this.DownloadTarget = function () {}
 
 this.DownloadTarget.prototype = {
@@ -1500,18 +1500,18 @@ this.DownloadTarget.fromSerializable = f
     }
 
     deserializeUnknownProperties(target, aSerializable, property =>
       property != "path" && property != "partFilePath");
   }
   return target;
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadError
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadError
 
 /**
  * Provides detailed information about a download failure.
  *
  * @param aProperties
  *        Object which may contain any of the following properties:
  *          {
  *            result: Result error code, defaulting to Cr.NS_ERROR_FAILURE
@@ -1696,18 +1696,18 @@ this.DownloadError.fromSerializable = fu
     property != "becauseBlockedByParentalControls" &&
     property != "becauseBlockedByReputationCheck" &&
     property != "becauseBlockedByRuntimePermissions" &&
     property != "reputationCheckVerdict");
 
   return e;
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadSaver
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadSaver
 
 /**
  * Template for an object that actually transfers the data for the download.
  */
 this.DownloadSaver = function () {}
 
 this.DownloadSaver.prototype = {
   /**
@@ -1855,18 +1855,18 @@ this.DownloadSaver.fromSerializable = fu
       saver = DownloadPDFSaver.fromSerializable(serializable);
       break;
     default:
       throw new Error("Unrecoginzed download saver type.");
   }
   return saver;
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadCopySaver
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadCopySaver
 
 /**
  * Saver object that simply copies the entire source file to the target.
  */
 this.DownloadCopySaver = function () {}
 
 this.DownloadCopySaver.prototype = {
   __proto__: DownloadSaver.prototype,
@@ -2335,18 +2335,18 @@ this.DownloadCopySaver.fromSerializable 
   }
 
   deserializeUnknownProperties(saver, aSerializable, property =>
     property != "entityID" && property != "type");
 
   return saver;
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadLegacySaver
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadLegacySaver
 
 /**
  * Saver object that integrates with the legacy nsITransfer interface.
  *
  * For more background on the process, see the DownloadLegacyTransfer object.
  */
 this.DownloadLegacySaver = function ()
 {
@@ -2719,18 +2719,18 @@ this.DownloadLegacySaver.prototype = {
  * Returns a new DownloadLegacySaver object.  This saver type has a
  * deserializable form only when creating a new object in memory, because it
  * cannot be serialized to disk.
  */
 this.DownloadLegacySaver.fromSerializable = function () {
   return new DownloadLegacySaver();
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadPDFSaver
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadPDFSaver
 
 /**
  * This DownloadSaver type creates a PDF file from the current document in a
  * given window, specified using the windowRef property of the DownloadSource
  * object associated with the download.
  *
  * In order to prevent the download from saving a different document than the one
  * originally loaded in the window, any attempt to restart the download will fail.
--- a/toolkit/components/jsdownloads/src/DownloadImport.jsm
+++ b/toolkit/components/jsdownloads/src/DownloadImport.jsm
@@ -5,18 +5,18 @@
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 "use strict";
 
 this.EXPORTED_SYMBOLS = [
   "DownloadImport",
 ];
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 const Cc = Components.classes;
 const Ci = Components.interfaces;
 const Cu = Components.utils;
 const Cr = Components.results;
 
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
 
@@ -37,18 +37,18 @@ XPCOMUtils.defineLazyModuleGetter(this, 
  * These are the only types of download states that
  * we will import.
  */
 const DOWNLOAD_NOTSTARTED = -1;
 const DOWNLOAD_DOWNLOADING = 0;
 const DOWNLOAD_PAUSED = 4;
 const DOWNLOAD_QUEUED = 5;
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadImport
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadImport
 
 /**
  * Provides an object that has a method to import downloads
  * from the previous SQLite storage format.
  *
  * @param aList   A DownloadList where each successfully
  *                imported download will be added.
  * @param aPath   The path to the database file.
--- a/toolkit/components/jsdownloads/src/DownloadLegacy.js
+++ b/toolkit/components/jsdownloads/src/DownloadLegacy.js
@@ -11,33 +11,33 @@
  * New code is expected to use the "Downloads.jsm" module directly, without
  * going through the interfaces implemented in this XPCOM component.  These
  * interfaces are only maintained for backwards compatibility with components
  * that still work synchronously on the main thread.
  */
 
 "use strict";
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 const Cc = Components.classes;
 const Ci = Components.interfaces;
 const Cu = Components.utils;
 const Cr = Components.results;
 
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "Downloads",
                                   "resource://gre/modules/Downloads.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "Promise",
                                   "resource://gre/modules/Promise.jsm");
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadLegacyTransfer
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadLegacyTransfer
 
 /**
  * nsITransfer implementation that provides a bridge to a Download object.
  *
  * Legacy downloads work differently than the JavaScript implementation.  In the
  * latter, the caller only provides the properties for the Download object and
  * the entire process is handled by the "start" method.  In the legacy
  * implementation, the caller must create a separate object to execute the
@@ -65,25 +65,25 @@ XPCOMUtils.defineLazyModuleGetter(this, 
 function DownloadLegacyTransfer()
 {
   this._deferDownload = Promise.defer();
 }
 
 DownloadLegacyTransfer.prototype = {
   classID: Components.ID("{1b4c85df-cbdd-4bb6-b04e-613caece083c}"),
 
-  //////////////////////////////////////////////////////////////////////////////
-  //// nsISupports
+  // ////////////////////////////////////////////////////////////////////////////
+  // // nsISupports
 
   QueryInterface: XPCOMUtils.generateQI([Ci.nsIWebProgressListener,
                                          Ci.nsIWebProgressListener2,
                                          Ci.nsITransfer]),
 
-  //////////////////////////////////////////////////////////////////////////////
-  //// nsIWebProgressListener
+  // ////////////////////////////////////////////////////////////////////////////
+  // // nsIWebProgressListener
 
   onStateChange: function DLT_onStateChange(aWebProgress, aRequest, aStateFlags,
                                             aStatus)
   {
     if (!Components.isSuccessCode(aStatus)) {
       this._componentFailed = true;
     }
 
@@ -185,18 +185,18 @@ DownloadLegacyTransfer.prototype = {
       this._deferDownload.promise.then(function DLT_OSC_onDownload(aDownload) {
         aDownload.saver.onTransferFinished(aRequest, aStatus);
       }).then(null, Cu.reportError);
     }
   },
 
   onSecurityChange: function () { },
 
-  //////////////////////////////////////////////////////////////////////////////
-  //// nsIWebProgressListener2
+  // ////////////////////////////////////////////////////////////////////////////
+  // // nsIWebProgressListener2
 
   onProgressChange64: function DLT_onProgressChange64(aWebProgress, aRequest,
                                                       aCurSelfProgress,
                                                       aMaxSelfProgress,
                                                       aCurTotalProgress,
                                                       aMaxTotalProgress)
   {
     // Wait for the associated Download object to be available.
@@ -208,18 +208,18 @@ DownloadLegacyTransfer.prototype = {
   onRefreshAttempted: function DLT_onRefreshAttempted(aWebProgress, aRefreshURI,
                                                       aMillis, aSameURI)
   {
     // Indicate that refreshes and redirects are allowed by default.  However,
     // note that download components don't usually call this method at all.
     return true;
   },
 
-  //////////////////////////////////////////////////////////////////////////////
-  //// nsITransfer
+  // ////////////////////////////////////////////////////////////////////////////
+  // // nsITransfer
 
   init: function DLT_init(aSource, aTarget, aDisplayName, aMIMEInfo, aStartTime,
                           aTempFile, aCancelable, aIsPrivate)
   {
     this._cancelable = aCancelable;
 
     let launchWhenSucceeded = false, contentType = null, launcherPath = null;
 
@@ -273,18 +273,18 @@ DownloadLegacyTransfer.prototype = {
     this._signatureInfo = signatureInfo;
   },
 
   setRedirects: function (redirects)
   {
     this._redirects = redirects;
   },
 
-  //////////////////////////////////////////////////////////////////////////////
-  //// Private methods and properties
+  // ////////////////////////////////////////////////////////////////////////////
+  // // Private methods and properties
 
   /**
    * This deferred object contains a promise that is resolved with the Download
    * object associated with this nsITransfer instance, when it is available.
    */
   _deferDownload: null,
 
   /**
@@ -306,12 +306,12 @@ DownloadLegacyTransfer.prototype = {
   _sha256Hash: null,
 
   /**
    * Save the signature info in a serialized protobuf of the downloaded file.
    */
   _signatureInfo: null,
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// Module
+// //////////////////////////////////////////////////////////////////////////////
+// // Module
 
 this.NSGetFactory = XPCOMUtils.generateNSGetFactory([DownloadLegacyTransfer]);
--- a/toolkit/components/jsdownloads/src/DownloadList.jsm
+++ b/toolkit/components/jsdownloads/src/DownloadList.jsm
@@ -21,33 +21,33 @@
 "use strict";
 
 this.EXPORTED_SYMBOLS = [
   "DownloadList",
   "DownloadCombinedList",
   "DownloadSummary",
 ];
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 const Cc = Components.classes;
 const Ci = Components.interfaces;
 const Cu = Components.utils;
 const Cr = Components.results;
 
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "Promise",
                                   "resource://gre/modules/Promise.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "Task",
                                   "resource://gre/modules/Task.jsm");
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadList
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadList
 
 /**
  * Represents a collection of Download objects that can be viewed and managed by
  * the user interface, and persisted across sessions.
  */
 this.DownloadList = function ()
 {
   this._downloads = [];
@@ -250,18 +250,18 @@ this.DownloadList.prototype = {
           // processing the other downloads in the list.
           download.finalize(true).then(null, Cu.reportError);
         }
       }
     }.bind(this)).then(null, Cu.reportError);
   },
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadCombinedList
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadCombinedList
 
 /**
  * Provides a unified, unordered list combining public and private downloads.
  *
  * Download objects added to this list are also added to one of the two
  * underlying lists, based on their "source.isPrivate" property.  Views on this
  * list will receive notifications for both public and private downloads.
  *
@@ -335,18 +335,18 @@ this.DownloadCombinedList.prototype = {
   remove: function (aDownload)
   {
     if (aDownload.source.isPrivate) {
       return this._privateList.remove(aDownload);
     }
     return this._publicList.remove(aDownload);
   },
 
-  //////////////////////////////////////////////////////////////////////////////
-  //// DownloadList view
+  // ////////////////////////////////////////////////////////////////////////////
+  // // DownloadList view
 
   onDownloadAdded: function (aDownload)
   {
     this._downloads.push(aDownload);
     this._notifyAllViews("onDownloadAdded", aDownload);
   },
 
   onDownloadChanged: function (aDownload)
@@ -359,18 +359,18 @@ this.DownloadCombinedList.prototype = {
     let index = this._downloads.indexOf(aDownload);
     if (index != -1) {
       this._downloads.splice(index, 1);
     }
     this._notifyAllViews("onDownloadRemoved", aDownload);
   },
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadSummary
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadSummary
 
 /**
  * Provides an aggregated view on the contents of a DownloadList.
  */
 this.DownloadSummary = function ()
 {
   this._downloads = [];
   this._views = new Set();
@@ -533,18 +533,18 @@ this.DownloadSummary.prototype = {
           view.onSummaryChanged();
         }
       } catch (ex) {
         Cu.reportError(ex);
       }
     }
   },
 
-  //////////////////////////////////////////////////////////////////////////////
-  //// DownloadList view
+  // ////////////////////////////////////////////////////////////////////////////
+  // // DownloadList view
 
   onDownloadAdded: function (aDownload)
   {
     this._downloads.push(aDownload);
     if (this._list) {
       this._onListChanged();
     }
   },
--- a/toolkit/components/jsdownloads/src/DownloadStore.jsm
+++ b/toolkit/components/jsdownloads/src/DownloadStore.jsm
@@ -29,18 +29,18 @@
  */
 
 "use strict";
 
 this.EXPORTED_SYMBOLS = [
   "DownloadStore",
 ];
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 const Cc = Components.classes;
 const Ci = Components.interfaces;
 const Cu = Components.utils;
 const Cr = Components.results;
 
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
 
@@ -54,18 +54,18 @@ XPCOMUtils.defineLazyModuleGetter(this, 
 XPCOMUtils.defineLazyGetter(this, "gTextDecoder", function () {
   return new TextDecoder();
 });
 
 XPCOMUtils.defineLazyGetter(this, "gTextEncoder", function () {
   return new TextEncoder();
 });
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadStore
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadStore
 
 /**
  * Handles serialization of Download objects and persistence into a file, so
  * that the state of downloads can be restored across sessions.
  *
  * @param aList
  *        DownloadList object to be populated or serialized.
  * @param aPath
--- a/toolkit/components/jsdownloads/src/DownloadUIHelper.jsm
+++ b/toolkit/components/jsdownloads/src/DownloadUIHelper.jsm
@@ -9,18 +9,18 @@
  */
 
 "use strict";
 
 this.EXPORTED_SYMBOLS = [
   "DownloadUIHelper",
 ];
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 const Cc = Components.classes;
 const Ci = Components.interfaces;
 const Cu = Components.utils;
 const Cr = Components.results;
 
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
 Cu.import("resource://gre/modules/AppConstants.jsm");
@@ -39,18 +39,18 @@ const kStringsRequiringFormatting = {
   fileExecutableSecurityWarning: true,
   cancelDownloadsOKTextMultiple: true,
   quitCancelDownloadsAlertMsgMultiple: true,
   quitCancelDownloadsAlertMsgMacMultiple: true,
   offlineCancelDownloadsAlertMsgMultiple: true,
   leavePrivateBrowsingWindowsCancelDownloadsAlertMsgMultiple2: true
 };
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadUIHelper
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadUIHelper
 
 /**
  * Provides functions to handle status and messages in the user interface.
  */
 this.DownloadUIHelper = {
   /**
    * Returns an object that can be used to display prompts related to downloads.
    *
@@ -92,18 +92,18 @@ XPCOMUtils.defineLazyGetter(DownloadUIHe
       };
     } else {
       strings[stringName] = string.value;
     }
   }
   return strings;
 });
 
-////////////////////////////////////////////////////////////////////////////////
-//// DownloadPrompter
+// //////////////////////////////////////////////////////////////////////////////
+// // DownloadPrompter
 
 /**
  * Allows displaying prompts related to downloads.
  *
  * @param aParent
  *        The nsIDOMWindow to which prompts should be attached, or null to
  *        attach prompts to the most recently active window.
  */
--- a/toolkit/components/jsdownloads/src/Downloads.jsm
+++ b/toolkit/components/jsdownloads/src/Downloads.jsm
@@ -9,18 +9,18 @@
  */
 
 "use strict";
 
 this.EXPORTED_SYMBOLS = [
   "Downloads",
 ];
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 const Cc = Components.classes;
 const Ci = Components.interfaces;
 const Cu = Components.utils;
 const Cr = Components.results;
 
 Cu.import("resource://gre/modules/Integration.jsm");
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
@@ -37,18 +37,18 @@ XPCOMUtils.defineLazyModuleGetter(this, 
 XPCOMUtils.defineLazyModuleGetter(this, "Promise",
                                   "resource://gre/modules/Promise.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "Task",
                                   "resource://gre/modules/Task.jsm");
 
 Integration.downloads.defineModuleGetter(this, "DownloadIntegration",
             "resource://gre/modules/DownloadIntegration.jsm");
 
-////////////////////////////////////////////////////////////////////////////////
-//// Downloads
+// //////////////////////////////////////////////////////////////////////////////
+// // Downloads
 
 /**
  * This object is exposed directly to the consumers of this JavaScript module,
  * and provides the only entry point to get references to back-end objects.
  */
 this.Downloads = {
   /**
    * Work on downloads that were not started from a private browsing window.
--- a/toolkit/components/jsdownloads/test/browser/head.js
+++ b/toolkit/components/jsdownloads/test/browser/head.js
@@ -4,18 +4,18 @@
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 /**
  * Provides infrastructure for automated download components tests.
  */
 
 "use strict";
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 var Cc = Components.classes;
 var Ci = Components.interfaces;
 var Cu = Components.utils;
 var Cr = Components.results;
 
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
 
@@ -29,18 +29,18 @@ XPCOMUtils.defineLazyModuleGetter(this, 
                                   "resource://gre/modules/Services.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "HttpServer",
                                   "resource://testing-common/httpd.js");
 XPCOMUtils.defineLazyModuleGetter(this, "OS",
                                   "resource://gre/modules/osfile.jsm");
 
 const TEST_TARGET_FILE_NAME_PDF = "test-download.pdf";
 
-////////////////////////////////////////////////////////////////////////////////
-//// Support functions
+// //////////////////////////////////////////////////////////////////////////////
+// // Support functions
 
 // While the previous test file should have deleted all the temporary files it
 // used, on Windows these might still be pending deletion on the physical file
 // system.  Thus, start from a new base number every time, to make a collision
 // with a file that is still pending deletion highly unlikely.
 var gFileCounter = Math.floor(Math.random() * 1000000);
 
 /**
--- a/toolkit/components/jsdownloads/test/unit/common_test_Download.js
+++ b/toolkit/components/jsdownloads/test/unit/common_test_Download.js
@@ -6,18 +6,18 @@
 /**
  * This script is loaded by "test_DownloadCore.js" and "test_DownloadLegacy.js"
  * with different values of the gUseLegacySaver variable, to apply tests to both
  * the "copy" and "legacy" saver implementations.
  */
 
 "use strict";
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 const kDeleteTempFileOnExit = "browser.helperApps.deleteTempFileOnExit";
 
 /**
  * Creates and starts a new download, using either DownloadCopySaver or
  * DownloadLegacySaver based on the current test run.
  *
  * @return {Promise}
@@ -164,18 +164,18 @@ function waitForDirectoryShown() {
         resolve(path);
         return Promise.resolve();
       },
     });
     Integration.downloads.register(waitFn);
   });
 }
 
-////////////////////////////////////////////////////////////////////////////////
-//// Tests
+// //////////////////////////////////////////////////////////////////////////////
+// // Tests
 
 /**
  * Executes a download and checks its basic properties after construction.
  * The download is started by constructing the simplest Download object with
  * the "copy" saver, or using the legacy nsITransfer interface.
  */
 add_task(function* test_basic()
 {
--- a/toolkit/components/jsdownloads/test/unit/head.js
+++ b/toolkit/components/jsdownloads/test/unit/head.js
@@ -4,18 +4,18 @@
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 /**
  * Provides infrastructure for automated download components tests.
  */
 
 "use strict";
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 var Cc = Components.classes;
 var Ci = Components.interfaces;
 var Cu = Components.utils;
 var Cr = Components.results;
 
 Cu.import("resource://gre/modules/Integration.jsm");
 Cu.import("resource://gre/modules/XPCOMUtils.jsm");
@@ -85,18 +85,18 @@ const TEST_DATA_SHORT_GZIP_ENCODED =
  * All the tests are implemented with add_task, this starts them automatically.
  */
 function run_test()
 {
   do_get_profile();
   run_next_test();
 }
 
-////////////////////////////////////////////////////////////////////////////////
-//// Support functions
+// //////////////////////////////////////////////////////////////////////////////
+// // Support functions
 
 /**
  * HttpServer object initialized before tests start.
  */
 var gHttpServer;
 
 /**
  * Given a file name, returns a string containing an URI that points to the file
@@ -671,18 +671,18 @@ function isValidDate(aDate) {
 }
 
 /**
  * Position of the first byte served by the "interruptible_resumable.txt"
  * handler during the most recent response.
  */
 var gMostRecentFirstBytePos;
 
-////////////////////////////////////////////////////////////////////////////////
-//// Initialization functions common to all tests
+// //////////////////////////////////////////////////////////////////////////////
+// // Initialization functions common to all tests
 
 add_task(function test_common_initialize()
 {
   // Start the HTTP server.
   gHttpServer = new HttpServer();
   gHttpServer.registerDirectory("/", do_get_file("../data"));
   gHttpServer.start(-1);
   do_register_cleanup(() => {
--- a/toolkit/components/jsdownloads/test/unit/test_DownloadCore.js
+++ b/toolkit/components/jsdownloads/test/unit/test_DownloadCore.js
@@ -7,26 +7,26 @@
  * Tests the main download interfaces using DownloadCopySaver.
  */
 
 "use strict";
 
 XPCOMUtils.defineLazyModuleGetter(this, "DownloadError",
                                   "resource://gre/modules/DownloadCore.jsm");
 
-////////////////////////////////////////////////////////////////////////////////
-//// Execution of common tests
+// //////////////////////////////////////////////////////////////////////////////
+// // Execution of common tests
 
 var gUseLegacySaver = false;
 
 var scriptFile = do_get_file("common_test_Download.js");
 Services.scriptloader.loadSubScript(NetUtil.newURI(scriptFile).spec);
 
-////////////////////////////////////////////////////////////////////////////////
-//// Tests
+// //////////////////////////////////////////////////////////////////////////////
+// // Tests
 
 /**
  * Tests the DownloadError object.
  */
 add_task(function test_DownloadError()
 {
   let error = new DownloadError({ result: Cr.NS_ERROR_NOT_RESUMABLE,
                                   message: "Not resumable."});
--- a/toolkit/components/jsdownloads/test/unit/test_DownloadImport.js
+++ b/toolkit/components/jsdownloads/test/unit/test_DownloadImport.js
@@ -2,18 +2,18 @@
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 /**
  * Tests the DownloadImport object.
  */
 
 "use strict";
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 XPCOMUtils.defineLazyModuleGetter(this, "Sqlite",
                                   "resource://gre/modules/Sqlite.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "DownloadImport",
                                   "resource://gre/modules/DownloadImport.jsm");
 
 // Importable states
 const DOWNLOAD_NOTSTARTED = -1;
@@ -121,20 +121,20 @@ function promiseInsertRow(aConnection, a
   ];
 
   return aConnection.execute("INSERT INTO moz_downloads ("
                             + "name, source, target, tempPath, startTime,"
                             + "endTime, state, referrer, entityID, currBytes,"
                             + "maxBytes, mimeType, preferredApplication,"
                             + "preferredAction, autoResume, guid)"
                             + "VALUES ("
-                            + "'', ?, ?, ?, ?, " //name,
-                            + "0, ?, ?, ?, 0, "  //endTime, currBytes
+                            + "'', ?, ?, ?, ?, " // name,
+                            + "0, ?, ?, ?, 0, "  // endTime, currBytes
                             + " ?, ?, ?, "       //
-                            + " ?, ?, '')",      //and guid are not imported
+                            + " ?, ?, '')",      // and guid are not imported
                             values);
 }
 
 /**
  * Retrieves the number of rows in the moz_downloads table of the
  * database.
  *
  * @param aConnection
@@ -317,18 +317,18 @@ function checkDownload(aDownload, aDownl
     do_check_eq(aDownload.contentType, aDownloadRow.expectedContentType);
     do_check_eq(aDownload.launcherPath, aDownloadRow.preferredApplication);
 
     do_check_eq(aDownload.launchWhenSucceeded,
                 aDownloadRow.preferredAction != Ci.nsIMIMEInfo.saveToDisk);
   });
 }
 
-////////////////////////////////////////////////////////////////////////////////
-//// Preparation tasks
+// //////////////////////////////////////////////////////////////////////////////
+// // Preparation tasks
 
 /**
  * Prepares the list of downloads to be added to the database that should
  * be imported by the import procedure.
  */
 add_task(function* prepareDownloadsToImport() {
 
   let sourceUrl = httpUrl("source.txt");
@@ -647,18 +647,18 @@ add_task(function* prepareNonImportableD
       mimeType: "mimeType7",
       preferredAction: Ci.nsIMIMEInfo.saveToDisk,
       preferredApplication: "prerredApplication7",
       autoResume: 1
     },
   ];
 });
 
-////////////////////////////////////////////////////////////////////////////////
-//// Test
+// //////////////////////////////////////////////////////////////////////////////
+// // Test
 
 /**
  * Creates a temporary Sqlite database with download data and perform an
  * import of that data to the new Downloads API to verify that the import
  * worked correctly.
  */
 add_task(function* test_downloadImport()
 {
--- a/toolkit/components/jsdownloads/test/unit/test_DownloadIntegration.js
+++ b/toolkit/components/jsdownloads/test/unit/test_DownloadIntegration.js
@@ -2,18 +2,18 @@
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 /**
  * Tests the DownloadIntegration object.
  */
 
 "use strict";
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 /**
  * Notifies the prompt observers and verify the expected downloads count.
  *
  * @param aIsPrivate
  *        Flag to know is test private observers.
  * @param aExpectedCount
  *        the expected downloads count for quit and offline observers.
@@ -39,18 +39,18 @@ function notifyPromptObservers(aIsPrivat
     DownloadIntegration._testPromptDownloads = -1;
     Services.obs.notifyObservers(cancelQuit, "last-pb-context-exiting", null);
     do_check_eq(DownloadIntegration._testPromptDownloads, aExpectedPBCount);
   }
 
   delete DownloadIntegration._testPromptDownloads;
 }
 
-////////////////////////////////////////////////////////////////////////////////
-//// Tests
+// //////////////////////////////////////////////////////////////////////////////
+// // Tests
 
 /**
  * Allows re-enabling the real download directory logic during one test.
  */
 function allowDirectoriesInTest() {
   DownloadIntegration.allowDirectories = true;
   function cleanup() {
     DownloadIntegration.allowDirectories = false;
@@ -201,18 +201,18 @@ add_task(function* test_getTemporaryDown
   } else {
     let tempDir = Services.dirsvc.get("TmpD", Ci.nsIFile);
     do_check_eq(downloadDir, tempDir.path);
   }
 
   cleanup();
 });
 
-////////////////////////////////////////////////////////////////////////////////
-//// Tests DownloadObserver
+// //////////////////////////////////////////////////////////////////////////////
+// // Tests DownloadObserver
 
 /**
  * Re-enables the default observers for the following tests.
  *
  * This takes effect the first time a DownloadList object is created, and lasts
  * until this test file has completed.
  */
 add_task(function* test_observers_setup()
--- a/toolkit/components/jsdownloads/test/unit/test_DownloadLegacy.js
+++ b/toolkit/components/jsdownloads/test/unit/test_DownloadLegacy.js
@@ -4,15 +4,15 @@
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 /**
  * Tests the integration with legacy interfaces for downloads.
  */
 
 "use strict";
 
-////////////////////////////////////////////////////////////////////////////////
-//// Execution of common tests
+// //////////////////////////////////////////////////////////////////////////////
+// // Execution of common tests
 
 var gUseLegacySaver = true;
 
 var scriptFile = do_get_file("common_test_Download.js");
 Services.scriptloader.loadSubScript(NetUtil.newURI(scriptFile).spec);
--- a/toolkit/components/jsdownloads/test/unit/test_DownloadList.js
+++ b/toolkit/components/jsdownloads/test/unit/test_DownloadList.js
@@ -4,18 +4,18 @@
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 /**
  * Tests the DownloadList object.
  */
 
 "use strict";
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 /**
  * Returns a PRTime in the past usable to add expirable visits.
  *
  * @note Expiration ignores any visit added in the last 7 days, but it's
  *       better be safe against DST issues, by going back one day more.
  */
 function getExpirablePRTime()
@@ -60,18 +60,18 @@ function promiseExpirableDownloadVisit(a
       handleResult: function () {},
       handleCompletion: function handleCompletion() {
         deferred.resolve();
       }
     });
   return deferred.promise;
 }
 
-////////////////////////////////////////////////////////////////////////////////
-//// Tests
+// //////////////////////////////////////////////////////////////////////////////
+// // Tests
 
 /**
  * Checks the testing mechanism used to build different download lists.
  */
 add_task(function* test_construction()
 {
   let downloadListOne = yield promiseNewList();
   let downloadListTwo = yield promiseNewList();
--- a/toolkit/components/jsdownloads/test/unit/test_DownloadStore.js
+++ b/toolkit/components/jsdownloads/test/unit/test_DownloadStore.js
@@ -4,18 +4,18 @@
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 /**
  * Tests the DownloadStore object.
  */
 
 "use strict";
 
-////////////////////////////////////////////////////////////////////////////////
-//// Globals
+// //////////////////////////////////////////////////////////////////////////////
+// // Globals
 
 XPCOMUtils.defineLazyModuleGetter(this, "DownloadStore",
                                   "resource://gre/modules/DownloadStore.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "OS",
                                   "resource://gre/modules/osfile.jsm")
 
 /**
  * Returns a new DownloadList object with an associated DownloadStore.
@@ -33,18 +33,18 @@ function promiseNewListAndStore(aStorePa
 {
   return promiseNewList().then(function (aList) {
     let path = aStorePath || getTempFile(TEST_STORE_FILE_NAME).path;
     let store = new DownloadStore(aList, path);
     return [aList, store];
   });
 }
 
-////////////////////////////////////////////////////////////////////////////////
-//// Tests
+// //////////////////////////////////////////////////////////////////////////////
+// // Tests
 
 /**
  * Saves downloads to a file, then reloads them.
  */
 add_task(function* test_save_reload()
 {
   let [listForSave, storeForSave] = yield promiseNewListAndStore();
   let [listForLoad, storeForLoad] = yield promiseNewListAndStore(
--- a/toolkit/components/jsdownloads/test/unit/test_Downloads.js
+++ b/toolkit/components/jsdownloads/test/unit/test_Downloads.js
@@ -4,18 +4,18 @@
  * http://creativecommons.org/publicdomain/zero/1.0/ */
 
 /**
  * Tests the functions located directly in the "Downloads" object.
  */
 
 "use strict";
 
-////////////////////////////////////////////////////////////////////////////////
-//// Tests
+// //////////////////////////////////////////////////////////////////////////////
+// // Tests
 
 /**
  * Tests that the createDownload function exists and can be called.  More
  * detailed tests are implemented separately for the DownloadCore module.
  */
 add_task(function* test_createDownload()
 {
   // Creates a simple Download object without starting the download.
--- a/toolkit/components/lz4/lz4_internal.js
+++ b/toolkit/components/lz4/lz4_internal.js
@@ -24,38 +24,38 @@ if (typeof Components != "undefined") {
 }
 
 var libxul = new SharedAll.Library("libxul", SharedAll.Constants.Path.libxul);
 var Type = SharedAll.Type;
 
 libxul.declareLazyFFI(Primitives, "compress",
   "workerlz4_compress",
   null,
-  /*return*/ Type.size_t,
-  /*const source*/ Type.void_t.in_ptr,
-  /*inputSize*/ Type.size_t,
-  /*dest*/ Type.void_t.out_ptr
+  /* return*/ Type.size_t,
+  /* const source*/ Type.void_t.in_ptr,
+  /* inputSize*/ Type.size_t,
+  /* dest*/ Type.void_t.out_ptr
 );
 
 libxul.declareLazyFFI(Primitives, "decompress",
   "workerlz4_decompress",
   null,
-  /*return*/ Type.int,
-  /*const source*/ Type.void_t.in_ptr,
-  /*inputSize*/ Type.size_t,
-  /*dest*/ Type.void_t.out_ptr,
-  /*maxOutputSize*/ Type.size_t,
-  /*actualOutputSize*/ Type.size_t.out_ptr
+  /* return*/ Type.int,
+  /* const source*/ Type.void_t.in_ptr,
+  /* inputSize*/ Type.size_t,
+  /* dest*/ Type.void_t.out_ptr,
+  /* maxOutputSize*/ Type.size_t,
+  /* actualOutputSize*/ Type.size_t.out_ptr
 );
 
 libxul.declareLazyFFI(Primitives, "maxCompressedSize",
   "workerlz4_maxCompressedSize",
   null,
-  /*return*/ Type.size_t,
-  /*inputSize*/ Type.size_t
+  /* return*/ Type.size_t,
+  /* inputSize*/ Type.size_t
 );
 
 if (typeof module != "undefined") {
   module.exports = {
     get compress() {
       return Primitives.compress;
     },
     get decompress() {
--- a/toolkit/components/lz4/tests/xpcshell/data/worker_lz4.js
+++ b/toolkit/components/lz4/tests/xpcshell/data/worker_lz4.js
@@ -1,14 +1,14 @@
 importScripts("resource://gre/modules/workers/require.js");
 importScripts("resource://gre/modules/osfile.jsm");
 
 
 function do_print(x) {
-  //self.postMessage({kind: "do_print", args: [x]});
+  // self.postMessage({kind: "do_print", args: [x]});
   dump("TEST-INFO: " + x + "\n");
 }
 
 function do_check_true(x) {
   self.postMessage({kind: "do_check_true", args: [!!x]});
   if (x) {
     dump("TEST-PASS: " + x + "\n");
   } else {
--- a/toolkit/components/microformats/microformat-shiv.js
+++ b/toolkit/components/microformats/microformat-shiv.js
@@ -1202,17 +1202,17 @@ var Microformats; // jshint ignore:line
                                                         v2Name = context.getV2RootName(items[y]);
                                                         // add new root
                                                         if (prop.uf.indexOf(v2Name) > -1 && out.root.indexOf(v2Name) === -1) {
                                                             out.root.push(v2Name);
                                                             out.typeVersion = 'v1';
                                                         }
                                                         y++;
                                                     }
-                                                    //only add property once
+                                                    // only add property once
                                                     if (out.properties.indexOf(propName) === -1) {
                                                         out.properties.push([propName, 'v1']);
                                                     }
                                                 } else if (out.properties.indexOf(propName) === -1) {
                                                     out.properties.push([propName, 'v1']);
                                                 }
                                             }
                                         }
@@ -1237,21 +1237,21 @@ var Microformats; // jshint ignore:line
                     impiedRel = this.findRelImpied(node, ufName);
                     if (impiedRel && out.properties.indexOf(impiedRel) === -1) {
                         out.properties.push([impiedRel, 'v1']);
                     }
                 }
             }
 
 
-            //if(out.root.length === 1 && out.properties.length === 1) {
+            // if(out.root.length === 1 && out.properties.length === 1) {
             //  if(out.root[0].replace('h-','') === this.removePropPrefix(out.properties[0][0])) {
             //      out.typeVersion = 'v2';
             //  }
-            //}
+            // }
 
             return out;
         },
 
 
         /**
          * given a v1 or v2 root name, return mapping object
          *
@@ -1381,17 +1381,17 @@ var Microformats; // jshint ignore:line
 
             nodes = modules.domUtils.getNodesByAttribute(node, attrName);
             i = nodes.length;
             while (i--) {
                 try {
                     // the url parser can blow up if the format is not right
                     attr = modules.domUtils.getAttribute(nodes[i], attrName);
                     if (attr && attr !== '' && baseUrl !== '' && attr.indexOf('://') === -1) {
-                        //attr = urlParser.resolve(baseUrl, attr);
+                        // attr = urlParser.resolve(baseUrl, attr);
                         attr = modules.url.resolve(attr, baseUrl);
                         modules.domUtils.setAttribute(nodes[i], attrName, attr);
                     }
                 } catch (err) {
                     // do nothing - convert only the urls we can, leave the rest as they are
                 }
             }
         },
@@ -2420,17 +2420,17 @@ var Microformats; // jshint ignore:line
             // if a node is passed
             if (options.node) {
                 this.rootNode = options.node;
             }
 
 
             // if a html string is passed
             if (options.html) {
-                //var domParser = new DOMParser();
+                // var domParser = new DOMParser();
                 var domParser = this.getDOMParser();
                 this.rootNode = domParser.parseFromString( options.html, 'text/html' );
             }
 
 
             // find top level document from rootnode
             if (this.rootNode !== null) {
                 if (this.rootNode.nodeType === 9) {
@@ -2461,20 +2461,20 @@ var Microformats; // jshint ignore:line
 
         /**
         * gets the first DOM node
         *
         * @param  {Dom Document}
         * @return {DOM Node} node
         */
         getTopMostNode: function( node ) {
-            //var doc = this.ownerDocument(node);
-            //if(doc && doc.nodeType && doc.nodeType === 9 && doc.documentElement){
+            // var doc = this.ownerDocument(node);
+            // if(doc && doc.nodeType && doc.nodeType === 9 && doc.documentElement){
             //  return doc.documentElement;
-            //}
+            // }
             return node;
         },
 
 
 
          /**
          * abstracts DOM ownerDocument
          *
@@ -2837,17 +2837,17 @@ var Microformats; // jshint ignore:line
         /**
          * decodes html entities in given text
          *
          * @param  {DOM Document} doc
          * @param  String} text
          * @return {String}
          */
         decodeEntities: function( doc, text ) {
-            //return text;
+            // return text;
             return doc.createTextNode( text ).nodeValue;
         },
 
 
         /**
          * clones a DOM document
          *
          * @param  {DOM Document} document
@@ -2976,17 +2976,17 @@ var Microformats; // jshint ignore:line
 
     modules.url = {
 
 
         /**
          * creates DOM objects needed to resolve URLs
          */
         init: function() {
-            //this._domParser = new DOMParser();
+            // this._domParser = new DOMParser();
             this._domParser = modules.domUtils.getDOMParser();
             // do not use a head tag it does not work with IE9
             this._html = '<base id="base" href=""></base><a id="link" href=""></a>';
             this._nodes = this._domParser.parseFromString( this._html, 'text/html' );
             this._baseNode =  modules.domUtils.getElementById(this._nodes, 'base');
             this._linkNode =  modules.domUtils.getElementById(this._nodes, 'link');
         },
 
@@ -3593,17 +3593,17 @@ var Microformats; // jshint ignore:line
          * @return {String}
          */
         parseAmPmTime: function( text ) {
             var out = text,
                 times = [];
 
             // if the string has a text : or am or pm
             if (modules.utils.isString(out)) {
-                //text = text.toLowerCase();
+                // text = text.toLowerCase();
                 text = text.replace(/[ ]+/g, '');
 
                 if (text.match(':') || this.hasAM(text) || this.hasPM(text)) {
 
                     if (text.match(':')) {
                         times = text.split(':');
                     } else {
                         // single number text i.e. 5pm
@@ -3803,17 +3803,17 @@ var Microformats; // jshint ignore:line
               var out = '',
                   regex = /(<([^>]+)>)/ig;
 
               out = text.replace(regex, '');
               if (this.textFormat === 'whitespacetrimmed') {
                  out = modules.utils.trimWhitespace( out );
               }
 
-              //return entities.decode( out, 2 );
+              // return entities.decode( out, 2 );
               return modules.domUtils.decodeEntities( doc, out