Bug 1434934 - Remove dom.workers.enabled pref, r=bkelly

This commit is contained in:
Andrea Marchesini 2018-02-01 18:34:08 +01:00
parent 66b53c4f36
commit 0c7e47f8eb
9 changed files with 0 additions and 141 deletions

View File

@ -13,7 +13,6 @@
*/
[Constructor(USVString scriptURL, optional WorkerOptions options),
Func="mozilla::dom::WorkerPrivate::WorkerAvailable",
Exposed=(Window,DedicatedWorker,SharedWorker,System)]
interface Worker : EventTarget {
void terminate();

View File

@ -73,8 +73,6 @@
// A shrinking GC will run five seconds after the last event is processed.
#define IDLE_GC_TIMER_DELAY_SEC 5
#define PREF_WORKERS_ENABLED "dom.workers.enabled"
static mozilla::LazyLogModule sWorkerPrivateLog("WorkerPrivate");
static mozilla::LazyLogModule sWorkerTimeoutsLog("WorkerTimeouts");
@ -2969,24 +2967,6 @@ WorkerPrivate::Constructor(const GlobalObject& aGlobal,
aOptions.mName, nullptr, aRv);
}
// static
bool
WorkerPrivate::WorkerAvailable(JSContext* aCx, JSObject* /* unused */)
{
// If we're already on a worker workers are clearly enabled.
if (!NS_IsMainThread()) {
return true;
}
// If our caller is chrome, workers are always available.
if (nsContentUtils::IsSystemCaller(aCx)) {
return true;
}
// Else check the pref.
return Preferences::GetBool(PREF_WORKERS_ENABLED);
}
// static
already_AddRefed<ChromeWorkerPrivate>
ChromeWorkerPrivate::Constructor(const GlobalObject& aGlobal,

View File

@ -978,9 +978,6 @@ public:
const nsACString& aServiceWorkerScope,
WorkerLoadInfo* aLoadInfo, ErrorResult& aRv);
static bool
WorkerAvailable(JSContext* /* unused */, JSObject* /* unused */);
enum LoadGroupBehavior
{
InheritLoadGroup,

View File

@ -52,7 +52,6 @@ support-files =
fileSubWorker_worker.js
file_worker.js
sharedWorker_privateBrowsing.js
workersDisabled_worker.js
[test_WorkerDebugger.initialize.xul]
[test_WorkerDebugger.postMessage.xul]
@ -81,6 +80,5 @@ skip-if = (os == 'linux') # Bug 1244409
[test_fileReaderSyncErrors.xul]
[test_fileSlice.xul]
[test_fileSubWorker.xul]
[test_workersDisabled.xul]
[test_bug1062920.xul]
[test_sharedWorker_privateBrowsing.html]

View File

@ -72,7 +72,6 @@ support-files =
throwingOnerror_worker.js
timeoutTracing_worker.js
transferable_worker.js
workersDisabled_worker.js
test_worker_interfaces.js
worker_driver.js
worker_wrapper.js
@ -185,7 +184,6 @@ support-files =
[test_worker_interfaces.html]
[test_worker_interfaces_secureContext.html]
scheme=https
[test_workersDisabled.html]
[test_referrer.html]
[test_referrer_header_worker.html]
[test_importScripts_3rdparty.html]

View File

@ -1,54 +0,0 @@
<!--
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js">
</script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
</head>
<body>
<script type="text/javascript">
SimpleTest.waitForExplicitFinish();
const enabledPref = "dom.workers.enabled";
is(SpecialPowers.getBoolPref(enabledPref), true,
"Workers should be enabled.");
SpecialPowers.pushPrefEnv({"set": [[enabledPref, false]]}, test1);
function test1() {
ok(!("Worker" in window), "Worker constructor should not be available.");
var exception;
try {
var worker = new Worker("workersDisabled_worker.js");
}
catch(e) {
exception = e;
}
ok(exception, "Shouldn't be able to make a worker.");
SpecialPowers.pushPrefEnv({"set": [[enabledPref, true]]}, test2);
}
function test2() {
ok(("Worker" in window), "Worker constructor should be available.");
const message = "Hi";
var worker = new Worker("workersDisabled_worker.js");
worker.onmessage = function(event) {
is(event.data, message, "Good message.");
SimpleTest.finish();
}
worker.postMessage(message);
}
</script>
</body>
</html>

View File

@ -1,49 +0,0 @@
<?xml version="1.0"?>
<!--
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
<window title="DOM Worker Threads Test"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="test();">
<script type="application/javascript"
src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/>
<script type="application/javascript" src="dom_worker_helper.js"/>
<script type="application/javascript">
<![CDATA[
function test()
{
const enabledPref = "dom.workers.enabled";
const message = "Hi";
var prefs = Components.classes["@mozilla.org/preferences-service;1"]
.getService(Components.interfaces.nsIPrefBranch);
is(prefs.getBoolPref(enabledPref), true, "Workers should be enabled.");
prefs.setBoolPref(enabledPref, false);
ok("Worker" in window, "Worker constructor should be available.");
ok("ChromeWorker" in window,
"ChromeWorker constructor should be available.");
var worker = new ChromeWorker("workersDisabled_worker.js");
worker.onmessage = function(event) {
is(event.data, message, "Good message.");
prefs.clearUserPref(enabledPref);
finish();
}
worker.postMessage(message);
waitForWorkerFinish();
}
]]>
</script>
<body xmlns="http://www.w3.org/1999/xhtml">
<p id="display"></p>
<div id="content" style="display:none;"></div>
<pre id="test"></pre>
</body>
<label id="test-result"/>
</window>

View File

@ -1,7 +0,0 @@
/**
* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/
*/
onmessage = function(event) {
postMessage(event.data);
}

View File

@ -145,9 +145,6 @@ pref("dom.select_events.textcontrols.enabled", true);
pref("dom.select_events.textcontrols.enabled", false);
#endif
// Whether or not Web Workers are enabled.
pref("dom.workers.enabled", true);
// The number of workers per domain allowed to run concurrently.
// We're going for effectively infinite, while preventing abuse.
pref("dom.workers.maxPerDomain", 512);