From 06282ffef5c1e6f19e496c2172b54cd4179048b2 Mon Sep 17 00:00:00 2001
From: Richard Gibson DataCloneError
" DOMException
.
If transferable has an [[ArrayBufferData]] internal slot and
- IsSharedArrayBuffer(transferable) is true, then throw a
+ IsSharedArrayBuffer(transferable) is true or
+ either IsImmutableBuffer(transferable) is true, then throw a
"DataCloneError
" DOMException
.
If memory[transferable] exists,
From 2f4d3cb4ed91021748eeb0bb96c485199ead0449 Mon Sep 17 00:00:00 2001
From: Richard Gibson
Otherwise, if IsImmutableBuffer(value) is true, then:
+ +Set serialized to { [[Type]]: "ImmutableArrayBuffer", [[ArrayBufferData]]: + value.[[ArrayBufferData]], [[ArrayBufferByteLength]]: + value.[[ArrayBufferByteLength]] }.
Otherwise:
@@ -9792,7 +9802,8 @@ interface DOMStringList { memory).Assert: bufferSerialized.[[Type]] is "ArrayBuffer", - "ResizableArrayBuffer", "SharedArrayBuffer", or "GrowableSharedArrayBuffer".
If value has a [[DataView]] internal slot, then set serialized to { [[Type]]: "ArrayBufferView", [[Constructor]]: "DataView", [[ArrayBufferSerialized]]: @@ -10187,6 +10198,20 @@ o.myself = o;
Otherwise, if serialized.[[Type]] is "ImmutableArrayBuffer", then:
+ +Set value to a new ArrayBuffer object in targetRealm whose + [[ArrayBufferData]] internal slot value is serialized.[[ArrayBufferData]], whose + [[ArrayBufferByteLength]] internal slot value is + serialized.[[ArrayBufferByteLength]], and whose [[ArrayBufferIsImmutable]] internal + slot is present.
Assert: IsImmutableBuffer(value) is true.
Otherwise, if serialized.[[Type]] is "ArrayBuffer", then set value to a
new ArrayBuffer object in targetRealm whose [[ArrayBufferData]] internal slot value
From a48c69ae6819743845e13230edf90518ea98efea Mon Sep 17 00:00:00 2001
From: Richard Gibson Otherwise, if IsImmutableBuffer(value) is true, then: Set serialized to { [[Type]]: "ImmutableArrayBuffer", [[ArrayBufferData]]:
- value.[[ArrayBufferData]], [[ArrayBufferByteLength]]:
- value.[[ArrayBufferByteLength]] }. Set serialized to { [[Type]]: "ImmutableArrayBuffer", [[ArrayBufferData]]:
+ value.[[ArrayBufferData]], [[ArrayBufferByteLength]]:
+ value.[[ArrayBufferByteLength]] }. To support deserialization by independent processes at arbitrary points in
+ the future, the contents of value.[[ArrayBufferData]]
+ must be preserved when forStorage is true. But otherwise, a
+ pointer referencing value.[[ArrayBufferData]] is expected to
+ suffice.
-
To support deserialization by independent processes at arbitrary points in - the future, the contents of value.[[ArrayBufferData]] - must be preserved when forStorage is true. But otherwise, a - pointer referencing value.[[ArrayBufferData]] is expected to - suffice.
+ the future, the contents of value.[[ArrayBufferData]] need to be + preserved when forStorage is true. But otherwise, a pointer referencing + value.[[ArrayBufferData]] is expected to suffice. From 88b5fdf990c7788b02759fbecb360416f3383b4e Mon Sep 17 00:00:00 2001 From: Richard GibsonDataCloneError
" DOMException
.
- If transferable has an [[ArrayBufferData]] internal slot and +
If transferable has an [[ArrayBufferData]] internal slot and either
IsSharedArrayBuffer(transferable) is true or
- either IsImmutableBuffer(transferable) is true, then throw a
+ IsImmutableBuffer(transferable) is true, then throw a
"DataCloneError
" DOMException
.
If memory[transferable] exists,
From 56c3332d9deefe8001b2631f8e5a67ea6edc28b4 Mon Sep 17 00:00:00 2001
From: Richard Gibson
Assert: IsImmutableBuffer(value) is true.