mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-25 11:15:34 +00:00
925311bc77
Differential Revision: https://phabricator.services.mozilla.com/D42300 --HG-- extra : moz-landing-system : lando
57 lines
1.5 KiB
JavaScript
57 lines
1.5 KiB
JavaScript
/* 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";
|
|
|
|
const { Cc, Ci } = require("chrome");
|
|
const Services = require("Services");
|
|
|
|
// Number of terminal entries for the self-xss prevention to go away
|
|
const CONSOLE_ENTRY_THRESHOLD = 5;
|
|
|
|
var WebConsoleUtils = {
|
|
CONSOLE_ENTRY_THRESHOLD,
|
|
|
|
/**
|
|
* Wrap a string in an nsISupportsString object.
|
|
*
|
|
* @param string string
|
|
* @return nsISupportsString
|
|
*/
|
|
supportsString: function(string) {
|
|
const str = Cc["@mozilla.org/supports-string;1"].createInstance(
|
|
Ci.nsISupportsString
|
|
);
|
|
str.data = string;
|
|
return str;
|
|
},
|
|
|
|
/**
|
|
* Value of devtools.selfxss.count preference
|
|
*
|
|
* @type number
|
|
* @private
|
|
*/
|
|
_usageCount: 0,
|
|
get usageCount() {
|
|
if (WebConsoleUtils._usageCount < CONSOLE_ENTRY_THRESHOLD) {
|
|
WebConsoleUtils._usageCount = Services.prefs.getIntPref(
|
|
"devtools.selfxss.count"
|
|
);
|
|
if (Services.prefs.getBoolPref("devtools.chrome.enabled")) {
|
|
WebConsoleUtils.usageCount = CONSOLE_ENTRY_THRESHOLD;
|
|
}
|
|
}
|
|
return WebConsoleUtils._usageCount;
|
|
},
|
|
set usageCount(newUC) {
|
|
if (newUC <= CONSOLE_ENTRY_THRESHOLD) {
|
|
WebConsoleUtils._usageCount = newUC;
|
|
Services.prefs.setIntPref("devtools.selfxss.count", newUC);
|
|
}
|
|
},
|
|
};
|
|
|
|
exports.Utils = WebConsoleUtils;
|