Assertion failure in FocusState::IsCurrent MOZ_ASSERT(mLastContentProcessedEvent <= mLastAPZProcessedEvent)
Categories
(Core :: Panning and Zooming, defect, P3)
Tracking
()
People
(Reporter: hsivonen, Unassigned)
References
Details
Steps to reproduce
- Use a build with assertions enabled.
- Open 2 browser windows: one with one tab and another with two tabs.
- Load https://hsivonen.com/test/moz/keyboard-middle.html in all three tabs.
- Have focus in one of the tabs in the window with two tabs.
- Press up and down arrow keys.
- Drag the current tab to the tab bar of the other window.
- Press up and down arrow keys.
- Click the tab title of the tab you dragged to the other window.
- Go back to step 5. (I.e. keep dragging the tab from one window to another, switching windows by click rather than keyboard, and pressing the up and down arrow keys between each step.).
Actual results
After enough repetitions (fewer than 10 for me), the assertion in FocusState::IsCurrent()
fails.
Additional info
The numbers being compared can diverge by more than off-by-one: e.g. 287 vs. 206 in a case I observed.
Reporter | ||
Comment 1•4 years ago
|
||
I saw this when running on XWayland in a Wayland session on Ubuntu 18.04.
Comment 2•4 years ago
|
||
(In reply to Henri Sivonen (:hsivonen) from comment #0)
- Drag the current tab to the tab bar of the other window.
We track focus state in APZ per-window. We probably need to do some resetting / clearing when a tab is transferred from one window to another.
Comment 3•4 years ago
|
||
The user-visible symptoms here should be pretty mild: keyboard scrolling may be handled by the main thread rather than APZ as a result of the condition being asserted being false.
Updated•3 years ago
|
Comment 4•2 years ago
|
||
There is a potential diagnosis for this in bug 1760618 comment 14.
Comment 5•2 years ago
|
||
The severity field for this bug is relatively low, S3. However, the bug has 6 See Also bugs.
:botond, could you consider increasing the bug severity?
For more information, please visit auto_nag documentation.
Comment 6•2 years ago
|
||
While the failure of this assertion has been reported multiple times, only debug builds are affected, so S3 is appropriate.
Description
•