From 56e88fb4dd06e07569ddc3861e2e8e21f71e45b8 Mon Sep 17 00:00:00 2001 From: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Date: Wed, 15 Jun 2022 07:17:42 -0700 Subject: direct streams mostly work --- .../jsc/bindings/builtins/js/ReadableByteStreamInternals.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/javascript/jsc/bindings/builtins/js/ReadableByteStreamInternals.js') diff --git a/src/javascript/jsc/bindings/builtins/js/ReadableByteStreamInternals.js b/src/javascript/jsc/bindings/builtins/js/ReadableByteStreamInternals.js index 372c980a1..f59a7bdbc 100644 --- a/src/javascript/jsc/bindings/builtins/js/ReadableByteStreamInternals.js +++ b/src/javascript/jsc/bindings/builtins/js/ReadableByteStreamInternals.js @@ -61,12 +61,20 @@ function privateInitializeReadableByteStreamController(stream, underlyingByteSou @putByIdDirectPrivate(this, "cancel", @readableByteStreamControllerCancel); @putByIdDirectPrivate(this, "pull", @readableByteStreamControllerPull); + if (@getByIdDirectPrivate(underlyingByteSource, "lazy") === true) { + @putByIdDirectPrivate(this, "start", () => @readableStreamByteStreamControllerStart(this)); + } else { + @putByIdDirectPrivate(this, "start", @undefined); + @readableStreamByteStreamControllerStart(this); + } + return this; } function readableStreamByteStreamControllerStart(controller) { "use strict"; - + @putByIdDirectPrivate(controller, "start", @undefined); + if (@getByIdDirectPrivate(controller, "started") !== -1) return; @@ -84,6 +92,7 @@ function readableStreamByteStreamControllerStart(controller) { }); } + function privateInitializeReadableStreamBYOBRequest(controller, view) { "use strict"; -- cgit v1.2.3