Closed Bug 1596665 Opened 10 months ago Closed 10 months ago

[fission] Remove nsIWritablePropertyBag/nsIWritablePropertyBag2 support from DocumentChannelChild

Categories

(Core :: Networking, task, P2)

task

Tracking

()

RESOLVED FIXED
mozilla72
Fission Milestone M4.1
Tracking Status
firefox72 --- fixed

People

(Reporter: jya, Assigned: jya)

References

Details

(Whiteboard: [necko-triaged])

Attachments

(5 files)

DocumentChannelChild implements nsIWritablePropertyBag/nsIWritablePropertyBag2 via nsHashPropertyBag.

Those properties are set by nsDocShell in the content process and aren't passed to the parent.

If a change of process occurs the nsIChannel in the new content process won't have those properties set.

Currently this problem is hidden as the test only occurs where there's no process switch involved.

We do not need to set those properties on the DocumentChannel (neither Child nor Parent) ; only on the final channel. We should transmit those over IPC instead.

By removing nsHashPropertyBag inheritance from DocumentChannelChild we can simplify it and make those tests work with fission.

Fission Milestone: --- → M4.1
Priority: -- → P2
Whiteboard: [necko-triaged]

Only nsIURI are handled for the nsIVariant::GetAsInterface().

Rather that setting the property bag on both the child and parent from the docshell; we first set it on the parent instead, and once the redirect (or process switch) has completed we carry that bag across.

Depends on D53923

The previous site URI is now only written on the parent and sent back to the child once all redirects have completed.

In a follow up we will also transfer this information when a process switch occur as it's currently broken.

Depends on D53925

Attachment #9110169 - Attachment description: Bug 1596665 - P4. Expose nsDocShell utility methods. r?kmag → Bug 1596665 - P4. Expose some nsDocShell utility methods. r?kmag
Summary: Remove nsIWritablePropertyBag/nsIWritablePropertyBag2 support from DocumentChannelChild → [fission] Remove nsIWritablePropertyBag/nsIWritablePropertyBag2 support from DocumentChannelChild
Blocks: 1599006
Pushed by jyavenard@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/d328964a7526
P1. Add IPDL serializer for nsHasPropertyBag/nsIVariant. r=mattwoodrow
https://hg.mozilla.org/integration/autoland/rev/452793927396
P2. Add ability to copy all property bag contents to another. r=mattwoodrow
https://hg.mozilla.org/integration/autoland/rev/4bd5a9363b0d
P3. Copy property bag from parent to child. r=kmag,mayhemer
https://hg.mozilla.org/integration/autoland/rev/4949c8e7623b
P4. Expose some nsDocShell utility methods. r=kmag
https://hg.mozilla.org/integration/autoland/rev/5ccb0dc150d1
P5. Pass last site information from the parent and remove DCC's nsHashPropertyBag inheritance. r=mayhemer,kmag
Regressions: 1602989
You need to log in before you can comment on or make changes to this bug.