Nothing is keeping the WebXRSystem held by navigator.xr alive during GC, so any custom properties on it will be destroyed on each collection. As Navigator object, it should use GenerateIsReachable=ReachableFromNavigator to maintain state.
Created attachment 431137 [details]
Comment on attachment 431137 [details]
View in context: https://bugs.webkit.org/attachment.cgi?id=431137&action=review
> + Test: webxr/gc.html
I think test Test: line usually comes after the description?
> +2021-06-01 Sam Weinig <email@example.com>
Bad double changelog.
> +<script src="../resources/js-test-pre.js"></script>
Can use js-test.js
> +<script src="../resources/js-test-post.js"></script>
Created attachment 431145 [details]
Committed r278750 (238711@main): <https://commits.webkit.org/238711@main>
All reviewed patches have been landed. Closing bug and clearing flags on attachment 431145 [details].