- From: Mattias Buelens <notifications@github.com>
- Date: Thu, 25 Mar 2021 15:30:40 -0700
- To: whatwg/streams <streams@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
Received on Thursday, 25 March 2021 22:30:52 UTC
@MattiasBuelens commented on this pull request. > + assert(reader._readRequests.length === 0); + ReadableStreamReaderGenericRelease(reader); + + reader = AcquireReadableStreamBYOBReader(stream); + forwardReaderError(reader); + } + + const readIntoRequest = { + chunkSteps: chunk => { + // This needs to be delayed a microtask because it takes at least a microtask to detect errors (using + // reader._closedPromise below), and we want errors in stream to error both branches immediately. We cannot let + // successful synchronously-available reads get ahead of asynchronously-available errors. + queueMicrotask(() => { + reading = false; + + if (forBranch2 === true) { That would also work, but I'm a bit worried there would be a lot of duplication between the *pullWithBYOBFromBranch1* and *pullWithBYOBFromBranch2* algorithms. But if you think it'd be more readable that way, I can try that. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/whatwg/streams/pull/1114#discussion_r601880369
Received on Thursday, 25 March 2021 22:30:52 UTC