mrobinson · GitHub

@mrobinson

@jdm jdm mentioned this pull request

Jun 23, 2026

Open

jdm

jdm approved these changes Jun 23, 2026

Instead of clearing the `WindowProxy` on a `Window` when exiting a
pipeline, leave it in place (marked as discarded). This solves some
issues where code can attempt to access the proxy while it is being torn
down. Garbage collection leaks shouldn't be an issue in this case
because:
1. The proxy is stored as a `Dom` traced value so cycles should be
   collected.
2. Navigations (maybe sometimes?) do not clear these values anyway,
   so they are long-lived.
I validated that the `Window` object for the removed frames was dropped
and also that they don't show up in `about: memory`.
Signed-off-by: Martin Robinson <martin@abandonedwig.info>

@mrobinson

@mrobinson

@mrobinson

@mrobinson

mrobinson deleted the do-not-clear-window-proxy branch

June 24, 2026 09:44

@jdm jdm mentioned this pull request

Jul 17, 2026

Open

Read the original on github.com ↗