- From: Scott Haseley <notifications@github.com>
- Date: Thu, 20 Jun 2024 15:13:10 -0700
- To: whatwg/dom <dom@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
Received on Thursday, 20 June 2024 22:13:14 UTC
Thanks, yes that's indeed a problem. I confirmed we hit the same assert in Chromium. Re: moving the steps around, I think step 6 in "signal abort" might need to go above step 3 though, since running the abort algorithms can invoke JS, which could also call `AbortSignal.any()` and hit that assert (i.e the problem is running _any_ JS between setting the source's abort reason and dependents')? If we wanted to maintain the same order, we'd need to change "create a dependent abort signal" to check for the aborted state of the dependent signals' source signals, but then you could get cases where `AbortSignal.any([b])` returns an aborted signal even though `b` isn't aborted yet. I guess you could also propagate the aborted state separately first, but that's a lot more complexity than it's probably worth. -- Reply to this email directly or view it on GitHub: https://github.com/whatwg/dom/issues/1293#issuecomment-2181641556 You are receiving this because you are subscribed to this thread. Message ID: <whatwg/dom/issues/1293/2181641556@github.com>
Received on Thursday, 20 June 2024 22:13:14 UTC