From 16ae4a0d5799c9a4ed776f32929f73b1063ae4e8 Mon Sep 17 00:00:00 2001 From: Leo K Date: Mon, 9 Aug 2021 10:39:00 +0200 Subject: feat(extensions/web): add structuredClone function (#11572) Co-authored-by: Luca Casonato --- runtime/js/11_workers.js | 11 +++++++---- runtime/js/99_main.js | 12 ++++++++---- 2 files changed, 15 insertions(+), 8 deletions(-) (limited to 'runtime') diff --git a/runtime/js/11_workers.js b/runtime/js/11_workers.js index 38267f571..b5a8a9d0c 100644 --- a/runtime/js/11_workers.js +++ b/runtime/js/11_workers.js @@ -318,10 +318,13 @@ ); options = { transfer }; } else { - options = webidl.converters.PostMessageOptions(transferOrOptions, { - prefix, - context: "Argument 2", - }); + options = webidl.converters.StructuredSerializeOptions( + transferOrOptions, + { + prefix, + context: "Argument 2", + }, + ); } const { transfer } = options; const data = serializeJsMessageData(message, transfer); diff --git a/runtime/js/99_main.js b/runtime/js/99_main.js index 16a444098..a85c40eb9 100644 --- a/runtime/js/99_main.js +++ b/runtime/js/99_main.js @@ -105,10 +105,13 @@ delete Object.prototype.__proto__; ); options = { transfer }; } else { - options = webidl.converters.PostMessageOptions(transferOrOptions, { - prefix, - context: "Argument 2", - }); + options = webidl.converters.StructuredSerializeOptions( + transferOrOptions, + { + prefix, + context: "Argument 2", + }, + ); } const { transfer } = options; const data = serializeJsMessageData(message, transfer); @@ -373,6 +376,7 @@ delete Object.prototype.__proto__; performance: util.writable(performance.performance), setInterval: util.writable(timers.setInterval), setTimeout: util.writable(timers.setTimeout), + structuredClone: util.writable(messagePort.structuredClone), GPU: util.nonEnumerable(webgpu.GPU), GPUAdapter: util.nonEnumerable(webgpu.GPUAdapter), -- cgit v1.2.3