Bug 226898

Summary: Nothing is keeping navigator.xr alive during GC
Product: WebKit Reporter: Sam Weinig <sam>
Component: BindingsAssignee: Sam Weinig <sam>
Status: RESOLVED FIXED    
Severity: Normal CC: cdumez, esprehn+autocc, ews-watchlist, kondapallykalyan, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: Other   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch none

Description Sam Weinig 2021-06-10 14:28:37 PDT
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.
Comment 1 Sam Weinig 2021-06-10 15:01:46 PDT
Created attachment 431137 [details]
Patch
Comment 2 Chris Dumez 2021-06-10 15:04:21 PDT
Comment on attachment 431137 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=431137&action=review

r=me

> Source/WebCore/ChangeLog:8
> +        Test: webxr/gc.html

I think test Test: line usually comes after the description?

> LayoutTests/ChangeLog:15
> +2021-06-01  Sam Weinig  <weinig@apple.com>

Bad double changelog.

> LayoutTests/webxr/gc.html:5
> +<script src="../resources/js-test-pre.js"></script>

Can use js-test.js

> LayoutTests/webxr/gc.html:32
> +<script src="../resources/js-test-post.js"></script>

Not needed.
Comment 3 Sam Weinig 2021-06-10 15:34:59 PDT
Created attachment 431145 [details]
Patch
Comment 4 EWS 2021-06-10 20:01:07 PDT
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].
Comment 5 Radar WebKit Bug Importer 2021-06-10 20:02:19 PDT
<rdar://problem/79175625>