Audit nsIDocShellTreeItem usage in nsPrintDialogServiceWin::GetHWNDForDOMWindow in widget/windows/nsPrintDialogWin.cpp
Categories
(Core :: Widget: Win32, defect)
Tracking
()
Fission Milestone | M6c |
People
(Reporter: djvj, Unassigned)
References
(Blocks 1 open bug)
Details
(Whiteboard: [rm-docshell-tree-item:simple])
In file widget/windows/nsPrintDialogWin.cpp
Gets a DocShell from a window, and obtains the associated tree owner, then the nsIWebBrowserChrome from that, eventually getting the native data and widget.
Seems to be entirely chrome code, everything should be in-process.
Change to using BrowsingContext to walk up the tree, asserting that everything is in process.
Comment 1•1 year ago
|
||
Kannan says replacing nsIDocShellTreeItem calls should block enabling Fission in Nightly (M6).
Updated•1 year ago
|
Comment 2•1 year ago
|
||
Moving to Widget: Win32.
Please audit this use of the nsIDocShellTreeItem interface. With Fission enabled, Documents and nsDocShells for related frames, such as subframes and parent documents, may not be available within the current process and the corresponding nsIDocShellTreeItem methods will return null
If this code works as-is with Fission, we don't need to remove this usage of nsIDocShellTreeItem until when we remove nsIDocShellTreeItem entirely (bug 1607591) after we ship Fission MVP.
Fission documentation about replacing nsIDocShellTree Item:
https://wiki.mozilla.org/Project_Fission/DocShell_Tree_Replace
:farre's presentation with examples of replacing nsIDocShellTreeItem with BrowsingContext, WindowContext, SyncedContexts, and BrowsingContextGroup:
https://docs.google.com/presentation/d/1K4j6ngty64TZjJNS5qH-MBoOm3TI2dJedVsbH8jUhKE/edit#slide=id.g6e35225e5d_1_264
Updated•1 year ago
|
Comment 3•1 year ago
|
||
Jim, someone with Windows Widget experience will need to triage this bug and audit this code.
Comment 4•11 months ago
|
||
Auditing whether this use of nsIDocShellTreeItem breaks when Fission is enabled blocks Fission Nightly.
Updated•9 months ago
|
Comment 5•9 months ago
|
||
This looks like parent-process only code, so maybe OK as-is for Fission. Jim, can you confirm?
Comment 6•8 months ago
|
||
We shouldn't need to change anything, as this should be parent process only code.
Description
•