Closed Bug 1353044 Opened 8 years ago Closed 8 years ago

No loop of PChildToParentStream and PParentToChildStream

Categories

(Core :: DOM: Core & HTML, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: baku, Assigned: baku)

References

Details

Attachments

(2 files)

When a stream is sent via IPC, it can be a PChildToParentStream or a PParentToChildStream (it depends if it goes from parent to child or the other way around). If that stream is sent it back, we create a new PParentToChildStream (or PChildToParentStream). In this bug, I want to avoid this, and make gecko smart enough to use the origin inputStream instead the IPC one if a cycle is detected.
qdot, are you interested in nsIInputStream and IPC stream serialization?
Assignee: nobody → amarchesini
Attachment #8854033 - Flags: review?(kyle)
Blocks: 1353629
Attachment #8854033 - Flags: review?(kyle) → review+
Attachment #8854034 - Flags: review?(kyle) → review+
So the use of IDs and the map makes sense for not duplicating edges, and things look good afaict with the code, but do we have a way to test this easily or at all? Not quite sure if creating a loop outside of adding bogus classes to do so would be possible.
Flags: needinfo?(amarchesini)
Do you have metrics to show that this is worth it or is this purely speculative? I agree avoiding copying is useful, but minting UUIDs for every stream sent across IPC seems a bit heavyweight.
This is not needed for the PBlob refactoring. Sorry for that.
Status: NEW → RESOLVED
Closed: 8 years ago
Flags: needinfo?(amarchesini)
Resolution: --- → INVALID
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: