Closed Bug 1681769 Opened 5 years ago Closed 4 years ago

In-process MessageChannel connections not correctly setting pids, causing crashes in IPC logging

Categories

(Core :: Graphics: Layers, defect)

defect

Tracking

()

RESOLVED FIXED
91 Branch
Tracking Status
firefox91 --- fixed

People

(Reporter: bugzilla, Assigned: bugzilla)

Details

Attachments

(1 file)

STR:

Start Fenix with logging for PUiCompositorControllerParent enabled.

From what I can see, we're calling UiCompositorControllerChild::OpenForSameProcess. The pid is set correctly in the child actor, but it is not propagated to the parent actor. When logging PUiCompositorControllerParent, that code calls OtherPid and we release assert.

Looking at InProcessParent::Startup() , maybe it is the responsibility of UiCompositorControllerParent to call SetOtherProcessId()?

Maybe it could be done in UiCompositorControllerParent::InitializeForSameProcess().

I'll take this.

Assignee: nobody → aklotz
Status: NEW → ASSIGNED
Component: IPC → Graphics: Layers

If we don't set UiCompositorControllerParent's other pid during in-process
initialization, we release assert when trying to log IPDL traffic via
MOZ_IPC_MESSAGE_LOG.

Pushed by aklotz@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/9bf6a4637ee8 Set UiCompositorControllerParent's "other" pid when initializing for in-process; r=botond
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 91 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: