Closed
Bug 1316473
Opened 8 years ago
Closed 8 years ago
MessageChannels deadlock when instantiated with broken transports
Categories
(Core :: IPC, defect)
Core
IPC
Tracking
()
RESOLVED
FIXED
mozilla53
Tracking | Status | |
---|---|---|
firefox53 | --- | fixed |
People
(Reporter: dvander, Assigned: dvander)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
4.94 KB,
patch
|
billm
:
review+
|
Details | Diff | Splinter Review |
When a process dies, any outstanding endpoints that have not been opened will fail to be opened by IPDL. However, it still creates a transport object, and so we get a MessageChannel that assumes no error has occurred. The result is that no messages are ever sent, and the first sync message will cause a deadlock (as we'll wait for a reply that never comes).
Assignee | ||
Comment 1•8 years ago
|
||
This patch fixes MessageLink so that if the Transport is dead on arrivel, we fire off an error notification. I added a new OnChannelError function since the old one has an assert that would otherwise trigger. It might be okay to just remove that assert though.
Attachment #8809241 -
Flags: review?(wmccloskey)
Attachment #8809241 -
Flags: review?(wmccloskey) → review+
Pushed by danderson@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/10f112105ab2
Fix MessageChannel when constructed with a broken Transport. (bug 1316473, r=billm)
Comment 3•8 years ago
|
||
bugherder |
Status: ASSIGNED → RESOLVED
Closed: 8 years ago
status-firefox53:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla53
You need to log in
before you can comment on or make changes to this bug.
Description
•