Closed Bug 1768972 Opened 2 years ago Closed 2 years ago

DocAccessibleParent::AddChildDoc calls RecvEvent causing monitor lock reentry

Categories

(Core :: Disability Access APIs, defect)

All
Android
defect

Tracking

()

RESOLVED FIXED
102 Branch
Tracking Status
firefox102 --- fixed

People

(Reporter: eeejay, Assigned: eeejay)

References

Details

(Whiteboard: [ctw-m1])

Attachments

(1 file)

If an inner doc is added via BrowserParent::RecvPDocAccessibleConstructor it will call DocAccessibleParent::AddChildDoc which will call DocAccessibleParent::RecvEvent.

Both Recv functions hold a monitor auto lock and we end up hanging.

We rely on Recv events to be called from child processes and not from
other Recv events. If this happens we risk reentry in regards to the
android monitor lock.

Attachment #9276172 - Attachment description: Bug 1768972 - Introduce RecvEventInner to avoid android monitor lock reentry. r?Jamie → Bug 1768972 - Introduce FireEvent to avoid android monitor lock reentry. r?Jamie
Pushed by eisaacson@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/d6c88376ddfc
Introduce FireEvent to avoid android monitor lock reentry. r=Jamie
Whiteboard: [ctw-m1]
Severity: -- → S3
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 102 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: