aboutsummaryrefslogtreecommitdiff
path: root/src/javascript/jsc/bindings/builtins/js/ReadableStreamDefaultReader.js
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-06-09 21:29:57 -0700
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-06-09 21:29:57 -0700
commit5ccf606107b045ad32e2eed8d1c757b30a6e4040 (patch)
tree3839b85ef4089e3327018c0fa6737458ba00a5e5 /src/javascript/jsc/bindings/builtins/js/ReadableStreamDefaultReader.js
parentb8eea5cc4a1f9b6dd1a6a08d531e8e096c60cb5b (diff)
downloadbun-5ccf606107b045ad32e2eed8d1c757b30a6e4040.tar.gz
bun-5ccf606107b045ad32e2eed8d1c757b30a6e4040.tar.zst
bun-5ccf606107b045ad32e2eed8d1c757b30a6e4040.zip
`new Response(stream).arrayBuffer()` + 3 more
- `new Response(stream).arrayBuffer()` - `new Response(stream).json()` - `new Response(stream).text()` - `new Response(stream).blob()`
Diffstat (limited to 'src/javascript/jsc/bindings/builtins/js/ReadableStreamDefaultReader.js')
-rw-r--r--src/javascript/jsc/bindings/builtins/js/ReadableStreamDefaultReader.js13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/javascript/jsc/bindings/builtins/js/ReadableStreamDefaultReader.js b/src/javascript/jsc/bindings/builtins/js/ReadableStreamDefaultReader.js
index 118376ffb..bdeaf1919 100644
--- a/src/javascript/jsc/bindings/builtins/js/ReadableStreamDefaultReader.js
+++ b/src/javascript/jsc/bindings/builtins/js/ReadableStreamDefaultReader.js
@@ -80,6 +80,12 @@ function readMany()
if (length > 0) {
+ for (var i = 0; i < values.length; i++) {
+ const buf = values[i];
+ if (!(@ArrayBuffer.@isView(buf) || buf instanceof @ArrayBuffer)) {
+ values[i] = new @Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength);
+ }
+ }
@resetQueue(@getByIdDirectPrivate(controller, "queue"));
@@ -102,6 +108,13 @@ function readMany()
var queue = @getByIdDirectPrivate(controller, "queue");
var value = [result.value].concat(queue.content.toArray(false));
+ for (var i = 0; i < value.length; i++) {
+ const buf = value[i];
+ if (!(@ArrayBuffer.@isView(buf) || buf instanceof @ArrayBuffer)) {
+ value[i] = new @Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength);
+ }
+ }
+
var size = queue.size;
@resetQueue(queue);