aboutsummaryrefslogtreecommitdiff
path: root/src/javascript/jsc/bindings/builtins/js/ReadableStreamDefaultReader.js
diff options
context:
space:
mode:
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);