WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
171419
Serializing and deserializing SharedArrayBuffer
https://bugs.webkit.org/show_bug.cgi?id=171419
Summary
Serializing and deserializing SharedArrayBuffer
Anne van Kesteren
Reported
2017-04-27 21:54:31 PDT
Tests are in web-platform-tests: html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/ Online version (times out at times, not sure what's up):
https://w3c-test.org/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/
Change to the standard which will land later today:
https://github.com/whatwg/html/pull/2518
Once it lands, it's part of
https://html.spec.whatwg.org/multipage/infrastructure.html#safe-passing-of-structured-data
(Note that quite a few tests might not be applicable due to various APIs not being supported by WebKit, but even so there's still bugs there as far as I could tell.)
Attachments
Add attachment
proposed patch, testcase, etc.
Yusuke Suzuki
Comment 1
2021-09-09 03:39:08 PDT
@Chris I opened
https://w3c-test.org/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-history.https.html
and it said there is no SharedArrayBuffer. Are some headers missing?
Chris Dumez
Comment 2
2021-09-09 07:26:15 PDT
(In reply to Yusuke Suzuki from
comment #1
)
> @Chris > I opened >
https://w3c-test.org/html/infrastructure/safe-passing-of-structured-data/
> shared-array-buffers/serialization-via-history.https.html and it said there > is no SharedArrayBuffer. > Are some headers missing?
I see: assert_throws_dom: function "() => { history[method](new SharedArrayBuffer(), "dummy title"); }" did not throw The subtests are failing for me but not due to lack of SharedArrayBuffer support. From Web Inspector, I can see that the test is serving the COOP+COEP headers: Cross-Origin-Embedder-Policy: require-corp Cross-Origin-Opener-Policy: same-origin @Yusuke, I've enabled COOP + COEP by default only very recently. Maybe you tested on a build that didn't have them enabled yet?
Yusuke Suzuki
Comment 3
2021-09-09 16:59:18 PDT
(In reply to Chris Dumez from
comment #2
)
> (In reply to Yusuke Suzuki from
comment #1
) > > @Chris > > I opened > >
https://w3c-test.org/html/infrastructure/safe-passing-of-structured-data/
> > shared-array-buffers/serialization-via-history.https.html and it said there > > is no SharedArrayBuffer. > > Are some headers missing? > > I see: > assert_throws_dom: function "() => { history[method](new > SharedArrayBuffer(), "dummy title"); }" did not throw > > The subtests are failing for me but not due to lack of SharedArrayBuffer > support. > > From Web Inspector, I can see that the test is serving the COOP+COEP headers: > Cross-Origin-Embedder-Policy: require-corp > Cross-Origin-Opener-Policy: same-origin > > @Yusuke, I've enabled COOP + COEP by default only very recently. Maybe you > tested on a build that didn't have them enabled yet?
Thanks! Hmm, I've tried opening
https://w3c-test.org/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-history.https.html
with WebKit
r282238
, but I'm getting an error assert_throws_dom: function "() => { history[method](new SharedArrayBuffer(), "dummy title"); }" threw object "ReferenceError: Can't find variable: SharedArrayBuffer" that is not a DOMException DataCloneError: property "code" is equal to undefined, expected 25 I also opened the inspector, and it seems that SharedArrayBuffer is not defined. Is some flag necessary?
Chris Dumez
Comment 4
2021-09-09 17:04:56 PDT
(In reply to Yusuke Suzuki from
comment #3
)
> (In reply to Chris Dumez from
comment #2
) > > (In reply to Yusuke Suzuki from
comment #1
) > > > @Chris > > > I opened > > >
https://w3c-test.org/html/infrastructure/safe-passing-of-structured-data/
> > > shared-array-buffers/serialization-via-history.https.html and it said there > > > is no SharedArrayBuffer. > > > Are some headers missing? > > > > I see: > > assert_throws_dom: function "() => { history[method](new > > SharedArrayBuffer(), "dummy title"); }" did not throw > > > > The subtests are failing for me but not due to lack of SharedArrayBuffer > > support. > > > > From Web Inspector, I can see that the test is serving the COOP+COEP headers: > > Cross-Origin-Embedder-Policy: require-corp > > Cross-Origin-Opener-Policy: same-origin > > > > @Yusuke, I've enabled COOP + COEP by default only very recently. Maybe you > > tested on a build that didn't have them enabled yet? > > Thanks! > Hmm, I've tried opening >
https://w3c-test.org/html/infrastructure/safe-passing-of-structured-data/
> shared-array-buffers/serialization-via-history.https.html with WebKit >
r282238
, but I'm getting an error > > assert_throws_dom: function "() => { history[method](new > SharedArrayBuffer(), "dummy title"); }" threw object "ReferenceError: Can't > find variable: SharedArrayBuffer" that is not a DOMException DataCloneError: > property "code" is equal to undefined, expected 25 > > I also opened the inspector, and it seems that SharedArrayBuffer is not > defined. > Is some flag necessary?
Oh, I had not correctly enabled the COEP feature. Fixed in
https://commits.webkit.org/r282245
.
Yusuke Suzuki
Comment 5
2021-09-09 18:50:08 PDT
(In reply to Chris Dumez from
comment #4
)
> (In reply to Yusuke Suzuki from
comment #3
) > > (In reply to Chris Dumez from
comment #2
) > > > (In reply to Yusuke Suzuki from
comment #1
) > > > > @Chris > > > > I opened > > > >
https://w3c-test.org/html/infrastructure/safe-passing-of-structured-data/
> > > > shared-array-buffers/serialization-via-history.https.html and it said there > > > > is no SharedArrayBuffer. > > > > Are some headers missing? > > > > > > I see: > > > assert_throws_dom: function "() => { history[method](new > > > SharedArrayBuffer(), "dummy title"); }" did not throw > > > > > > The subtests are failing for me but not due to lack of SharedArrayBuffer > > > support. > > > > > > From Web Inspector, I can see that the test is serving the COOP+COEP headers: > > > Cross-Origin-Embedder-Policy: require-corp > > > Cross-Origin-Opener-Policy: same-origin > > > > > > @Yusuke, I've enabled COOP + COEP by default only very recently. Maybe you > > > tested on a build that didn't have them enabled yet? > > > > Thanks! > > Hmm, I've tried opening > >
https://w3c-test.org/html/infrastructure/safe-passing-of-structured-data/
> > shared-array-buffers/serialization-via-history.https.html with WebKit > >
r282238
, but I'm getting an error > > > > assert_throws_dom: function "() => { history[method](new > > SharedArrayBuffer(), "dummy title"); }" threw object "ReferenceError: Can't > > find variable: SharedArrayBuffer" that is not a DOMException DataCloneError: > > property "code" is equal to undefined, expected 25 > > > > I also opened the inspector, and it seems that SharedArrayBuffer is not > > defined. > > Is some flag necessary? > > Oh, I had not correctly enabled the COEP feature. Fixed in >
https://commits.webkit.org/r282245
.
Nice!!
Radar WebKit Bug Importer
Comment 6
2022-03-08 11:26:18 PST
<
rdar://problem/89979253
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug