[Fission] Fix session restore to work for cross-origin iframes
Categories
(Firefox :: Session Restore, defect, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox89 | --- | fixed |
People
(Reporter: djvj, Assigned: u608768)
References
(Blocks 3 open bugs)
Details
(Whiteboard: [rm-docshell-tree-item:hard])
Attachments
(4 files, 5 obsolete files)
In file toolkit/components/sessionstore/SessionStoreUtils.cpp
Called from RestoreFrameTreeData in session-store code.
Iterates over children of docshell, checking for CreatedDynamically
flag and skipping those children.
For non-skipped children, calls a callback which can run arbitrary script, passing the window-proxy for the child.
Change to use BrowsingContext to traverse list of children.
For out-of-process children, do whatever fancy fission stuff is needed to obtain a WindowProxy to a remote window, and then pass that.
This one is likely a bunch of work.
Comment 1•5 years ago
|
||
Kannan says replacing nsIDocShellTreeItem calls should block enabling Fission in Nightly (M6).
Updated•5 years ago
|
Comment 2•5 years ago
|
||
Alphan, are you the right contact for Fission Session Store questions? If so, can you please audit this use of the nsIDocShellTreeItem interface in SessionStoreUtils.cpp?
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 is broken with Fission, fixing it blocks enabling Fission is Nightly.
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
Comment 3•5 years ago
|
||
Yes, I will take care of this bug.
Comment 4•5 years ago
|
||
Updated•5 years ago
|
Comment 5•5 years ago
|
||
The severity field is not set for this bug.
:mikedeboer, could you have a look please?
For more information, please visit auto_nag documentation.
Comment 6•4 years ago
|
||
Severity S3 because this problem only affects Fission users.
Comment 7•4 years ago
|
||
Updated•4 years ago
|
Updated•4 years ago
|
We don't collect form data or scroll positions for out-of-process frames, so we can't really test if we're fixing anything here. Blocking on bug 1572084.
Updated•4 years ago
|
Updated•4 years ago
|
Assignee | ||
Comment 10•4 years ago
|
||
Depends on D89969
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Comment 11•4 years ago
|
||
Discussed with Nika and Kashav:
This doesn't necessarily block the Nightly experiment and this needs some more time to be implemented correctly.
Updated•4 years ago
|
Updated•4 years ago
|
Comment 12•4 years ago
|
||
Renaming the bug to indicate it is a bigger redesign - restore counterpart of Bug 1572084.
Assignee | ||
Comment 13•4 years ago
|
||
Depends on D89969
Assignee | ||
Comment 14•4 years ago
|
||
Depends on D107882
Updated•4 years ago
|
Assignee | ||
Comment 15•4 years ago
|
||
We compare these against the nsIRequest's URI to decide if we should send a
SSTabRestored, so they should be fixed-up.
Depends on D107882
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Assignee | ||
Comment 19•4 years ago
|
||
Assignee | ||
Comment 20•4 years ago
|
||
Originally authored by :farre for bug 1572084
Depends on D89969
Updated•4 years ago
|
Comment 21•4 years ago
|
||
Comment 22•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/12762a25c4fa
https://hg.mozilla.org/mozilla-central/rev/e84054ccadb0
https://hg.mozilla.org/mozilla-central/rev/d015ba9097c5
https://hg.mozilla.org/mozilla-central/rev/0df7b8660446
Comment 23•4 years ago
|
||
Backed out for causing Fission crashes (bug 1699349)
Backout link: https://hg.mozilla.org/mozilla-central/rev/8076082c6ed9dfac47115fe1766ebab510149acb
Updated•4 years ago
|
Assignee | ||
Comment 24•4 years ago
|
||
Looking into it, sounds like we're trying to restore data into a discarded browsing context. Sorry for the noise.
Updated•4 years ago
|
Comment 25•4 years ago
|
||
Comment 26•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/e618ac693605
https://hg.mozilla.org/mozilla-central/rev/1f30fb9d9356
https://hg.mozilla.org/mozilla-central/rev/0a97bfe2a112
https://hg.mozilla.org/mozilla-central/rev/b6ec8682e6dc
Description
•