Re: [whatwg/dom] AbortSignal.any() assertion failure (Issue #1293)

On second thought, I don't think reordering would work. You could still have situations where the assert fails, e.g. by modifying the test case as follows:

```
<script>

let a = new AbortController();
let b = AbortSignal.any([a.signal]);
let c = AbortSignal.any([b]);
let d;
b.addEventListener("abort", () => {
  d = AbortSignal.any([c]);
  console.log(b.aborted, a.signal.aborted, c.aborted, d.aborted);
})
a.abort();
console.log(b.aborted, a.signal.aborted, c.aborted, d.aborted);

</script>
```

Maybe it wouldn't be too bad to split out propagating the abort reason and running abort algorithms/firing events so that all dependents have their aborted state atomically updated.

-- 
Reply to this email directly or view it on GitHub:
https://github.com/whatwg/dom/issues/1293#issuecomment-2187646031
You are receiving this because you are subscribed to this thread.

Message ID: <whatwg/dom/issues/1293/2187646031@github.com>

Received on Monday, 24 June 2024 23:49:46 UTC