Bug 224650

Summary: Web Inspector: audit for re-entrancy issues with `initialLayout` and `layout`
Product: WebKit Reporter: Devin Rousso <hi>
Component: Web InspectorAssignee: Nobody <webkit-unassigned>
Status: NEW    
Severity: Normal CC: hi, inspector-bugzilla-changes, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: All   
OS: All   
See Also: https://bugs.webkit.org/show_bug.cgi?id=224648
https://bugs.webkit.org/show_bug.cgi?id=224678

Devin Rousso
Reported 2021-04-15 23:16:50 PDT
It appears that it's possible for re-entrancy issues in the `WI.View` system since the `_didInitialLayout` flag isn't set until _after_ `initialLayout` returns, meaning that if the logic inside `initialLayout` triggers a synchronous `layout` then that second `layout` won't know that it's already in the middle of an `initialLayout`. As an example, showing the `WI.GraphicsOverviewContentView` in `WI.GraphicsTabContentView.prototype.initialLayout` causes the navigation sidebar to be shown, which forces a synchronous `layout` from handling `WI.Sidebar.Event.WidthDidChange`.
Attachments
Radar WebKit Bug Importer
Comment 1 2021-04-15 23:18:44 PDT
Note You need to log in before you can comment on or make changes to this bug.