mirror of
https://github.com/servo/servo.git
synced 2025-06-22 16:18:59 +01:00
Auto merge of #26875 - servo:jdm-patch-44, r=gterzian
Don't pretend we support SharedArrayBuffer. Fixes #26874.
This commit is contained in:
commit
596e9105c5
14 changed files with 75 additions and 18 deletions
|
@ -137,7 +137,7 @@ pub unsafe fn create_global_object(
|
||||||
|
|
||||||
let mut options = RealmOptions::default();
|
let mut options = RealmOptions::default();
|
||||||
options.creationOptions_.traceGlobal_ = Some(trace);
|
options.creationOptions_.traceGlobal_ = Some(trace);
|
||||||
options.creationOptions_.sharedMemoryAndAtomics_ = true;
|
options.creationOptions_.sharedMemoryAndAtomics_ = false;
|
||||||
options.creationOptions_.streams_ = true;
|
options.creationOptions_.streams_ = true;
|
||||||
|
|
||||||
rval.set(JS_NewGlobalObject(
|
rval.set(JS_NewGlobalObject(
|
||||||
|
|
|
@ -45,7 +45,6 @@ use js::jsapi::ContextOptionsRef;
|
||||||
use js::jsapi::GetPromiseUserInputEventHandlingState;
|
use js::jsapi::GetPromiseUserInputEventHandlingState;
|
||||||
use js::jsapi::InitConsumeStreamCallback;
|
use js::jsapi::InitConsumeStreamCallback;
|
||||||
use js::jsapi::InitDispatchToEventLoop;
|
use js::jsapi::InitDispatchToEventLoop;
|
||||||
use js::jsapi::JS_SetFutexCanWait;
|
|
||||||
use js::jsapi::MimeType;
|
use js::jsapi::MimeType;
|
||||||
use js::jsapi::PromiseUserInputEventHandlingState;
|
use js::jsapi::PromiseUserInputEventHandlingState;
|
||||||
use js::jsapi::StreamConsumer as JSStreamConsumer;
|
use js::jsapi::StreamConsumer as JSStreamConsumer;
|
||||||
|
@ -451,14 +450,6 @@ unsafe fn new_rt_and_cx_with_parent(
|
||||||
let (cx, runtime) = if let Some(parent) = parent {
|
let (cx, runtime) = if let Some(parent) = parent {
|
||||||
let runtime = RustRuntime::create_with_parent(parent);
|
let runtime = RustRuntime::create_with_parent(parent);
|
||||||
let cx = runtime.cx();
|
let cx = runtime.cx();
|
||||||
|
|
||||||
// Note: this enables blocking on an Atomics.wait,
|
|
||||||
// which should only be enabled for an agent whose [[CanBlock]] is true.
|
|
||||||
// Currently only a dedicated worker agent uses a parent,
|
|
||||||
// and this agent can block.
|
|
||||||
// See https://html.spec.whatwg.org/multipage/#integration-with-the-javascript-agent-cluster-formalism
|
|
||||||
JS_SetFutexCanWait(cx);
|
|
||||||
|
|
||||||
(cx, runtime)
|
(cx, runtime)
|
||||||
} else {
|
} else {
|
||||||
let runtime = RustRuntime::new(JS_ENGINE.lock().unwrap().as_ref().unwrap().clone());
|
let runtime = RustRuntime::new(JS_ENGINE.lock().unwrap().as_ref().unwrap().clone());
|
||||||
|
|
|
@ -91,6 +91,12 @@ skip: true
|
||||||
skip: true
|
skip: true
|
||||||
[cross-origin-opener-policy]
|
[cross-origin-opener-policy]
|
||||||
skip: true
|
skip: true
|
||||||
|
[infrastructure]
|
||||||
|
skip: false
|
||||||
|
[safe-passing-of-structured-data]
|
||||||
|
skip: false
|
||||||
|
[shared-array-buffers]
|
||||||
|
skip: true
|
||||||
[semantics]
|
[semantics]
|
||||||
skip: false
|
skip: false
|
||||||
[document-metadata]
|
[document-metadata]
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
[encodeInto.any.html]
|
[encodeInto.any.html]
|
||||||
|
expected: ERROR
|
||||||
[encodeInto() with 𝌆A and destination length 3, offset 4, filler 128]
|
[encodeInto() with 𝌆A and destination length 3, offset 4, filler 128]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
@ -565,6 +566,7 @@
|
||||||
|
|
||||||
|
|
||||||
[encodeInto.any.worker.html]
|
[encodeInto.any.worker.html]
|
||||||
|
expected: ERROR
|
||||||
[encodeInto() with 𝌆A and destination length 3, offset 4, filler 128]
|
[encodeInto() with 𝌆A and destination length 3, offset 4, filler 128]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
|
|
||||||
|
|
||||||
[decode-utf8.any.html]
|
[decode-utf8.any.html]
|
||||||
|
expected: ERROR
|
||||||
[decoding one UTF-8 chunk should give one output string]
|
[decoding one UTF-8 chunk should give one output string]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
@ -55,6 +56,7 @@
|
||||||
|
|
||||||
|
|
||||||
[decode-utf8.any.worker.html]
|
[decode-utf8.any.worker.html]
|
||||||
|
expected: ERROR
|
||||||
[decoding one UTF-8 chunk should give one output string]
|
[decoding one UTF-8 chunk should give one output string]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
[textdecoder-copy.any.html]
|
[textdecoder-copy.any.html]
|
||||||
|
expected: ERROR
|
||||||
[Modify buffer after passing it in (SharedArrayBuffer)]
|
[Modify buffer after passing it in (SharedArrayBuffer)]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
||||||
[textdecoder-copy.any.worker.html]
|
[textdecoder-copy.any.worker.html]
|
||||||
|
expected: ERROR
|
||||||
[Modify buffer after passing it in (SharedArrayBuffer)]
|
[Modify buffer after passing it in (SharedArrayBuffer)]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
[textdecoder-streaming.any.worker.html]
|
[textdecoder-streaming.any.worker.html]
|
||||||
expected: CRASH
|
expected: ERROR
|
||||||
|
|
||||||
[textdecoder-streaming.any.html]
|
[textdecoder-streaming.any.html]
|
||||||
expected: CRASH
|
expected: ERROR
|
||||||
|
|
||||||
[textdecoder-streaming.any.sharedworker.html]
|
[textdecoder-streaming.any.sharedworker.html]
|
||||||
expected: ERROR
|
expected: ERROR
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
[requires-failure.https.any.html]
|
[requires-failure.https.any.html]
|
||||||
|
[[[CanBlock\]\] in a Window]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
[requires-failure.https.any.serviceworker.html]
|
[requires-failure.https.any.serviceworker.html]
|
||||||
expected: ERROR
|
expected: ERROR
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
|
[requires-success.any.worker.html]
|
||||||
|
[[[CanBlock\]\] in a DedicatedWorkerGlobalScope]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
[requires-success.any.sharedworker.html]
|
[requires-success.any.sharedworker.html]
|
||||||
expected: ERROR
|
expected: ERROR
|
||||||
[requires-success]
|
[requires-success]
|
||||||
|
|
|
@ -1,9 +1,12 @@
|
||||||
[constructor-shared.tentative.any.worker.html]
|
[constructor-shared.tentative.any.worker.html]
|
||||||
[Shared memory]
|
[Shared memory]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
[Order of evaluation for descriptor (with shared)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
||||||
[constructor-shared.tentative.any.html]
|
[constructor-shared.tentative.any.html]
|
||||||
[Shared memory]
|
[Shared memory]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
[Order of evaluation for descriptor (with shared)]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -26,3 +26,8 @@
|
||||||
[X 5: buffer.copyFromChannel(x, 0, -1) incorrectly threw IndexSizeError: "The index is not in the allowed range.".]
|
[X 5: buffer.copyFromChannel(x, 0, -1) incorrectly threw IndexSizeError: "The index is not in the allowed range.".]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[Executing "copyFrom-exceptions"]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Executing "copyTo-exceptions"]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -1,5 +1,47 @@
|
||||||
[send-data-sharedarraybuffer.any.html]
|
[send-data-sharedarraybuffer.any.html]
|
||||||
expected: CRASH
|
[sending a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Int8Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Uint8Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Uint8ClampedArray backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Int16Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Uint16Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Int32Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Uint32Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Float32Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Float64Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a DataView backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
[send-data-sharedarraybuffer.any.worker.html]
|
[send-data-sharedarraybuffer.any.worker.html]
|
||||||
expected: CRASH
|
[sending a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Int8Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Uint8Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Uint8ClampedArray backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Int16Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Uint16Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Int32Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Uint32Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Float32Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a Float64Array backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
||||||
|
[sending a DataView backed by a SharedArrayBuffer]
|
||||||
|
expected: FAIL
|
|
@ -11005,7 +11005,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"interfaces.js": [
|
"interfaces.js": [
|
||||||
"253dd124cebe9b7d3aa4fc5ff8c9137e7aeb2f66",
|
"7a105e791dd80bd42d80055a64746bbe5fece41e",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"nested_asap_script.js": [
|
"nested_asap_script.js": [
|
||||||
|
|
|
@ -5,7 +5,6 @@ function test_interfaces(interfaceNamesInGlobalScope) {
|
||||||
var ecmaGlobals = [
|
var ecmaGlobals = [
|
||||||
"Array",
|
"Array",
|
||||||
"ArrayBuffer",
|
"ArrayBuffer",
|
||||||
"Atomics",
|
|
||||||
"BigInt",
|
"BigInt",
|
||||||
"BigInt64Array",
|
"BigInt64Array",
|
||||||
"BigUint64Array",
|
"BigUint64Array",
|
||||||
|
@ -43,7 +42,6 @@ function test_interfaces(interfaceNamesInGlobalScope) {
|
||||||
"Reflect",
|
"Reflect",
|
||||||
"RegExp",
|
"RegExp",
|
||||||
"Set",
|
"Set",
|
||||||
"SharedArrayBuffer",
|
|
||||||
"String",
|
"String",
|
||||||
"Symbol",
|
"Symbol",
|
||||||
"SyntaxError",
|
"SyntaxError",
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue