Crash in [@ mozilla::PresShell::EnsurePrecedingPointerRawUpdate]
Categories
(Core :: DOM: Events, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr115 | --- | unaffected |
firefox-esr128 | --- | unaffected |
firefox138 | --- | unaffected |
firefox139 | --- | unaffected |
firefox140 | + | fixed |
People
(Reporter: aryx, Assigned: masayuki)
References
(Regression)
Details
(Keywords: crash, regression)
Crash Data
Attachments
(1 file)
4 crashes from 3 installs of Firefox 140.0a1 on Windows 11
Crash report: https://crash-stats.mozilla.org/report/index/d8787e03-9d2f-483d-a9a0-f0b2c0250516
MOZ_CRASH Reason:
MOZ_DIAGNOSTIC_ASSERT(!sDispatchingRawUpdateEventFromHere) (Dispatching ePointerRawUpdate should not be done recursively)
Top 10 frames:
0 xul.dll mozilla::PresShell::EnsurePrecedingPointerRawUpdate(AutoWeakFrame&, mozilla::... layout/base/PresShell.cpp:7412
0 xul.dll mozilla::PresShell::HandleEvent(nsIFrame*, mozilla::WidgetGUIEvent*, bool, ns... layout/base/PresShell.cpp:7366
1 xul.dll nsViewManager::DispatchEvent(mozilla::WidgetGUIEvent*, nsView*, nsEventStatus*) view/nsViewManager.cpp:611
2 xul.dll mozilla::PresShell::DispatchSynthMouseMove(mozilla::WidgetGUIEvent*) layout/base/PresShell.cpp:4148
2 xul.dll mozilla::PresShell::ProcessSynthMouseMoveEvent(bool) layout/base/PresShell.cpp:6112
3 xul.dll mozilla::PresShell::nsSynthMouseMoveEvent::Run() layout/base/PresShell.h:2076
4 xul.dll mozilla::PresShell::HandleEvent(nsIFrame*, mozilla::WidgetGUIEvent*, bool, ns... layout/base/PresShell.cpp:7336
5 xul.dll mozilla::PresShell::EventHandler::MaybeHandleEventWithAnotherPresShell(AutoWe... layout/base/PresShell.cpp:8488
5 xul.dll mozilla::PresShell::EventHandler::HandleEvent(AutoWeakFrame&, mozilla::Widget... layout/base/PresShell.cpp:7541
6 xul.dll mozilla::PresShell::EnsurePrecedingPointerRawUpdate(AutoWeakFrame&, mozilla::... layout/base/PresShell.cpp:7435
Assignee | ||
Comment 1•2 months ago
|
||
Ah, I forgot to remove the assertion because it's possible case. On the other hand, the crash report's stack trace is what I didn't expect. So, it detects a bug 😛
Updated•2 months ago
|
Assignee | ||
Comment 2•2 months ago
|
||
The assertion was intended to detect unexpected recursive event dispatching of
ePointerRawUpdate
. However, if may occur if spinning the event loop with
opening a modal dialog or synchronous XHR. Therefore, the assertion may fail
even in the valid situations.
The crash reports are caused by synthesized eMouseMove
. However, it'll be
checked after getting WidgetMousePointer*
after the removing assertion.
So, the case is correctly handled anyway.
Updated•2 months ago
|
Description
•