Summary: | Fix StructuredClone for streams to handle BigInt64Array / BigUint64Array | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Timothy Gu <timothygu99> | ||||
Component: | Bindings | Assignee: | Yusuke Suzuki <ysuzuki> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Normal | CC: | benjamin, calvaris, cdumez, clopez, darin, ews-watchlist, heycam, joepeck, sam, webkit-bug-importer, youennf, ysuzuki | ||||
Priority: | P2 | Keywords: | InRadar | ||||
Version: | WebKit Nightly Build | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Attachments: |
|
Description
Timothy Gu
2021-07-01 00:20:25 PDT
Created attachment 433168 [details]
Patch
Comment on attachment 433168 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=433168&action=review > Source/WebCore/ChangeLog:3 > + [WebIDL] Add BigInt64Array and BigUint64Array support to IDL bindings generator The title is misleading, this seems to only be fixing a bug in the streams implementation? This does not impact the bindings generator in any way. Streams is not using the IDL binding generator (unfortunately). > Source/WebCore/Modules/streams/ReadableStreamInternals.js:460 > + @readableStreamDefaultControllerEnqueue(teeState.branch2.@readableStreamController, shouldClone ? @structuredCloneForFetch(result.value) : result.value); Why is this called structuredCloneForFetch? Did you mean structuredCloneForStream? Comment on attachment 433168 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=433168&action=review Thanks! >> Source/WebCore/ChangeLog:3 >> + [WebIDL] Add BigInt64Array and BigUint64Array support to IDL bindings generator > > The title is misleading, this seems to only be fixing a bug in the streams implementation? > > This does not impact the bindings generator in any way. Streams is not using the IDL binding generator (unfortunately). Changed the title to reflect the patch. >> Source/WebCore/Modules/streams/ReadableStreamInternals.js:460 >> + @readableStreamDefaultControllerEnqueue(teeState.branch2.@readableStreamController, shouldClone ? @structuredCloneForFetch(result.value) : result.value); > > Why is this called structuredCloneForFetch? Did you mean structuredCloneForStream? I used Fetch since the test is included in wpt/fetch, but it is OK to change it to Stream. Changed. Committed r279769 (239539@main): <https://commits.webkit.org/239539@main> |