| Summary: | Web Inspector: extension iframes leak when disabling an extension | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | BJ Burg <bburg> | ||||||
| Component: | Web Inspector | Assignee: | BJ Burg <bburg> | ||||||
| Status: | RESOLVED FIXED | ||||||||
| Severity: | Normal | CC: | bburg, ews-watchlist, hi, inspector-bugzilla-changes, pangle, timothy, webkit-bug-importer | ||||||
| Priority: | P2 | Keywords: | InRadar | ||||||
| Version: | WebKit Nightly Build | ||||||||
| Hardware: | All | ||||||||
| OS: | All | ||||||||
| Attachments: |
|
||||||||
|
Description
BJ Burg
2021-10-20 15:11:41 PDT
Created attachment 442050 [details]
Patch v1.0
Comment on attachment 442050 [details] Patch v1.0 View in context: https://bugs.webkit.org/attachment.cgi?id=442050&action=review > Source/WebInspectorUI/ChangeLog:9 > + Since shouldNotRemoveFromDOMWhenHidden() is true, the <iframe> will not > + be detached and unload its document in the normal tab-closing code path. This will still remove the `WI.View` from the parent `_subviews` even though the node wont be removed from the DOM, right? Can we somehow confirm that removing an extension does in fact GC all the related objects? > Source/WebInspectorUI/UserInterface/Controllers/WebInspectorExtensionController.js:74 > + tabContentView.dispose(); I would _strongly_ prefer that this be on `WI.WebInspectorExtensionTabContentView` instead of the more generic `WI.TabContentView` as the latter shouldn't ever need this mechanism (i.e. it should _always_ use `WI.View.prototype.removeSubview`) Comment on attachment 442050 [details] Patch v1.0 View in context: https://bugs.webkit.org/attachment.cgi?id=442050&action=review >> Source/WebInspectorUI/UserInterface/Controllers/WebInspectorExtensionController.js:74 >> + tabContentView.dispose(); > > I would _strongly_ prefer that this be on `WI.WebInspectorExtensionTabContentView` instead of the more generic `WI.TabContentView` as the latter shouldn't ever need this mechanism (i.e. it should _always_ use `WI.View.prototype.removeSubview`) Oh, woops, wrong file :)( Created attachment 442525 [details]
Patch v1.1
Committed r284958 (243610@main): <https://commits.webkit.org/243610@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 442525 [details]. |