14:37
<annevk>
Domenic: do you understand deliveryInProgress at https://trac.webkit.org/browser/trunk/Source/WebCore/dom/MutationObserver.cpp#L259?
14:37
<annevk>
Domenic: is that all compound microtasks really mean?
15:04
<Domenic>
annevk: it seems to prevent reentrancy
15:04
<Domenic>
Unclear how it maps to spec concepts
15:05
<annevk>
Domenic: I've done some digging and we can get rid of compound microtasks, pretty sure
15:05
<Domenic>
I mean I think we could but I'm unsure whether the replacement would just be the same thing in different words, or actually simpler.
15:05
<annevk>
Domenic: I still don't understand that deliveryInProgress entirely though as it's initialized to false and then checked if it can be true
15:05
<Domenic>
It's a `static`
15:05
<Domenic>
So it's only initialized the first time the function is called
15:06
<annevk>
Ah thanks
15:06
<Domenic>
https://www.tutorialspoint.com/cplusplus/cpp_static_members.htm second section
15:06
<Domenic>
wait no that's not it
15:06
<Domenic>
https://www.geeksforgeeks.org/static-keyword-cpp/
15:07
<annevk>
Thanks, removed my question from GitHub
15:08
<Domenic>
Also the interaction with "spin the event loop" seems complicated :/
15:08
<annevk>
Domenic: I suspect it directly relates to https://dom.spec.whatwg.org/#queue-a-mutation-observer-compound-microtask
15:09
<annevk>
Domenic: I've worked that through, that was added because of an obsolete dialog API that could spin the event loop
15:09
<annevk>
Domenic: as far as I can tell there's no API today that can trigger spin the event loop
15:09
<Domenic>
Wat
15:09
<annevk>
Domenic: so we don't have to worry about that, patch coming up
15:10
<Domenic>
I guess alert() maybe, we have a note saying that spinning the event loop is less bad than pausing IIRC
15:11
<annevk>
Domenic: no, that's not the case
15:11
<annevk>
Domenic: that'd be bad
15:12
<annevk>
we allow early returning
15:12
<Domenic>
https://html.spec.whatwg.org/multipage/webappapis.html#pause
15:13
<Domenic>
That was added at bz's request