Open
Bug 1700190
Opened 3 years ago
Updated 2 years ago
Session restore fails when there are gaps in data for embedded frames
Categories
(Firefox :: Session Restore, defect, P2)
Firefox
Session Restore
Tracking
()
NEW
People
(Reporter: u608768, Unassigned)
References
Details
(Whiteboard: [not-a-fission-bug])
Attachments
(1 file, 1 obsolete file)
STR
- Visit https://kashav.ca/bugs/1700190/top.html
- Type something into the second frame (and only the second frame)
- Close the tab
- Restore that closed tab (Ctrl-Shift-T)
Expected: the second frame restores its form data correctly.
Actual: the typed data either ends up in the first frame or sometimes is lost completely.
This repros both with and without the new collection code from bug 1572084.
What's happening is that:
- we've only typed data into the second frame, so we're only collecting data from that frame
- we use a placeholder
null
in the collected data children list for the first frame. For the above STR, the collected data looks something like:{ ..., children: [null, { url: ".../form.html", ... }] }
. - in the final flush, we copy all data from the cache here. As part of that process, we run our form data through PrivacyFilter.filterFormData here, and that function explicitly filters out
null
children objects.
A quick solution could be to replace the null
placeholders with some special placeholder object ({isplaceholder: true}
?), which the restore code will know how to deal with.
This is causing the test added in D108989 to fail.
Attachment #9210836 -
Attachment is obsolete: true
Summary: Session restore fails to collect data for embedded frames → Session restore fails when there are gaps in data for embedded frames
Updated•3 years ago
|
Assignee: nobody → kmadan
Blocks: fission-dogfooding
Severity: -- → S2
Status: NEW → ASSIGNED
Fission Milestone: --- → M7a
Priority: -- → P2
Updated•3 years ago
|
Fission Milestone: M8 → ---
Whiteboard: [not-a-fission-bug]
Not a Fission bug.
No longer blocks: fission-dogfooding, fission-sessionstore
Comment 5•2 years ago
|
||
Clearing assignee because Kashav is no longer at Mozilla.
Assignee: kshvmdn+bmo → nobody
Status: ASSIGNED → NEW
You need to log in
before you can comment on or make changes to this bug.
Description
•