Open jdm opened 22 hours ago
I suspect this is observable with:
./mach build -d --debug-mozjs
./mach test-wpt /resize-observer/observe.html --pref js.mem.gc.zeal.level=2 --pref js.mem.gc.zeal.frequency=1 --headless --timeout-multiplier=10
Ok, the tests in /resize-obsever/ are not enough to tickle this particular hazard because it requires a very precise setup:
Document::Fonts()
has never been calledThis is an impossible combination, I believe. It makes me want to find a way to remove the use of document.Fonts()
from Window::reflow, since that's the only use of a CanGc marker and it's the reason this looks like a GC borrow hazard.
There's a loop over the elements of a vector that are mutably borrowed, and then we call a method that can GC on each element.
https://github.com/servo/servo/blob/main/components/script/dom/document.rs#L3065