Re: [whatwg/streams] sink.abort() can be called during sink.start() (#683)

I attempted to implement the design proposed by @domenic to use the queue to get the correct behaviour. Unfortunately it appears to be a dead end. The biggest issue is that correct backpressure calculation relies on the write remaining in the queue until the sink write() operation completes, but abort() scheduling relies on removing all existing items in the queue. This causes a cascade of breakage with no apparent end.

Non-working patch: https://github.com/whatwg/streams/compare/master...ricea:abort-using-queue?expand=1
Test changes: https://github.com/w3c/web-platform-tests/compare/master...ricea:abort-during-start?expand=1

Unless someone thinks they can make this approach work, I will abandon it and fix this issue in a more straightforward way.

-- 
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/issues/683#issuecomment-279963659

Received on Wednesday, 15 February 2017 09:44:24 UTC