- From: Kagami Sascha Rosylight <notifications@github.com>
- Date: Thu, 26 Jan 2023 23:23:10 -0800
- To: whatwg/fetch <fetch@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
- Message-ID: <whatwg/fetch/pull/1593/review/1272213703@github.com>
@saschanaz commented on this pull request.
> +
+ <li>Let |extractSize| be the smaller value of |available| and |desiredSize|.
+
+ <li>Let <var>bytes</var> be the result of extracting |extractSize| of bytes from
+ <var>buffer</var>.
+
+ <li>If |stream|s [=ReadableStream/current BYOB request view=] is non-null, then
+ [=ArrayBufferView/write=] |bytes| into |stream|'s [=ReadableStream/current BYOB request view=],
+ and set |view| to |stream|'s [=ReadableStream/current BYOB request view=]. <li>Otherwise, set
+ |view| to the result of [=ArrayBufferView/create|creating=] a {{Uint8Array}} from |bytes| in
+ |stream|'s [=relevant Realm=].
+
+ <li>[=ReadableStream/Enqueue=] |view| into |stream|.
+
+ <li><p>If |stream| is [=ReadableStream/errored=], then [=fetch controller/terminate=]
+ |fetchParams|'s [=fetch params/controller=].
Copypasting my question from Matrix: https://matrix.to/#/!AGetWbsMpFPdSgUrbs:matrix.org/$1y0cHr7B913RupwXNW93uLA06GT5Uls6nV8Ds8khB80?via=matrix.org&via=mozilla.org&via=igalia.com
```js
r = new ReadableStream({
async pull(c) {
await new Promise(r => setTimeout(r, 100));
c.byobRequest.respond(512);
},
type: "bytes"
});
reader = r.getReader({mode: "byob"});
reader.read(new Uint16Array(1024));
setTimeout(() => reader.releaseLock(), 5);
```
This eventually hits https://streams.spec.whatwg.org/#abstract-opdef-readablebytestreamcontrollerenqueueclonedchunktoqueue which theoretically can error the stream. Can Fetch really ignore this?
--
Reply to this email directly or view it on GitHub:
https://github.com/whatwg/fetch/pull/1593#discussion_r1088650300
You are receiving this because you are subscribed to this thread.
Message ID: <whatwg/fetch/pull/1593/review/1272213703@github.com>
Received on Friday, 27 January 2023 07:23:22 UTC