- From: Adam Rice <notifications@github.com>
- Date: Fri, 28 Oct 2016 06:33:16 -0700
- To: whatwg/streams <streams@noreply.github.com>
- Message-ID: <whatwg/streams/pull/571/review/6231766@github.com>
ricea commented on this pull request. > - if (transformStream._readableBackpressure !== backpressure) { - TransformStreamSetBackpressure(transformStream, backpressure); + if (maybeBackpressure === true && transformStream._backpressure === false) { + // This allows pull() again. When desiredSize is 0, it's possible that a pull() is made immediately (but How about "will happen immediately" rather than "is made immediately"? > - if (transformStream._readableBackpressure !== backpressure) { - TransformStreamSetBackpressure(transformStream, backpressure); + if (maybeBackpressure === true && transformStream._backpressure === false) { + // This allows pull() again. When desiredSize is 0, it's possible that a pull() is made immediately (but + // asynchronously) after this because of pending read()s and fix _backpressure back to false. s/fix/set/ ? > - if (transformStream._readableBackpressure !== backpressure) { - TransformStreamSetBackpressure(transformStream, backpressure); + if (maybeBackpressure === true && transformStream._backpressure === false) { + // This allows pull() again. When desiredSize is 0, it's possible that a pull() is made immediately (but + // asynchronously) after this because of pending read()s and fix _backpressure back to false. + // + // We don't have to worry about that such a pull() may happen synchronously to the enqueue(), and therefore is not Sorry, I don't understand what "synchronously to" means here. Maybe you could explain the dangerous case as a series of steps, and then explain why it never happens? > return transformStream._backpressureChangePromise; } function TransformStreamSetBackpressure(transformStream, backpressure) { // console.log(`TransformStreamSetBackpressure(${backpressure})`); - assert(transformStream._readableBackpressure !== backpressure); + // Passes also when called for initialization. How about "during construction" instead of "for initialization"? > if (transformStream._backpressureChangePromise !== undefined) { + // The fulfillment value is just for the assertion. "the assertion" is ambiguous because it's not clear which assertion is being referred to. How about "just for a sanity check"? -- 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/571#pullrequestreview-6231766
Received on Friday, 28 October 2016 13:33:48 UTC