Open Bug 1597470 Opened 2 months ago Updated 28 days ago

Fix uses of AttachContainerRecurse & DetachContainerRecurse in layout/base/nsDocumentViewer.cpp


(Core :: DOM: Navigation, defect, P3)




Fission Milestone M6


(Reporter: djvj, Unassigned)


(Blocks 1 open bug)


(Whiteboard: [rm-docshell-tree-item:session-history])

In file layout/base/nsDocumentViewer.cpp

Recursive method that walk entire docshell subtree under a docshell tree item.

Called by Session-History logic within nsDocumentViewer::Open

Core logic: Accesses ContentViewer, then Document

  • Sets the attaches the containing DocShell to it.
  • Sets the ForwardingContainer field for the PresShell for the child window.

Relatively rare operation.

Change to using BrowsingContext.

Collect all out-of-process children across entire tree while traversing.

If list is non-empty, then send IPC to chrome with list of browsingcontext ids, and have chrome process broadcast this to all relevant processes.

Chrome process waits on all child process updates and responds when they are done.

Original sender process blocks on response from chrome process.

Kannan says replacing nsIDocShellTreeItem calls should block enabling Fission in Nightly (M6).

Fission Milestone: --- → M6
Priority: -- → P3
You need to log in before you can comment on or make changes to this bug.