Closed Bug 1714285 Opened 4 years ago Closed 4 years ago

Intermittent dom/events/test/test_coalesce_mousewheel.html | Should have gotten 1 wheel event - got 2, expected 1

Categories

(Core :: DOM: UI Events & Focus Handling, defect, P3)

defect

Tracking

()

RESOLVED FIXED
92 Branch
Tracking Status
firefox-esr78 --- unaffected
firefox-esr91 --- fixed
firefox89 --- unaffected
firefox90 --- unaffected
firefox91 --- wontfix
firefox92 --- fixed

People

(Reporter: intermittent-bug-filer, Assigned: masayuki)

References

(Regression)

Details

(Keywords: intermittent-failure, regression, Whiteboard: [stockwell disable-recommended])

Attachments

(1 file, 1 obsolete file)

Filed by: imoraru [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer?job_id=341602906&repo=autoland
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/KaI_SPOoSuOcGoxUafcjzg/runs/0/artifacts/public/logs/live_backing.log
Reftest URL: https://hg.mozilla.org/mozilla-central/raw-file/tip/layout/tools/reftest/reftest-analyzer.xhtml#logurl=https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/KaI_SPOoSuOcGoxUafcjzg/runs/0/artifacts/public/logs/live_backing.log&only_show_unexpected=1


[task 2021-06-03T03:20:41.152Z] 03:20:41     INFO - TEST-START | dom/events/test/test_coalesce_mousewheel.html
[task 2021-06-03T03:20:42.555Z] 03:20:42     INFO - GECKO(9876) | MEMORY STAT | vsize 601MB | vsizeMaxContiguous 1293MB | residentFast 59MB | heapAllocated 5MB
[task 2021-06-03T03:20:42.557Z] 03:20:42     INFO - TEST-OK | dom/events/test/test_coalesce_mousewheel.html | took 1407ms
[task 2021-06-03T03:20:42.616Z] 03:20:42     INFO - TEST-START | Shutdown
[task 2021-06-03T03:20:42.617Z] 03:20:42     INFO - Passed:  12
[task 2021-06-03T03:20:42.617Z] 03:20:42     INFO - Failed:  0
[task 2021-06-03T03:20:42.618Z] 03:20:42     INFO - Todo:    4
[task 2021-06-03T03:20:42.618Z] 03:20:42     INFO - Mode:    e10s
[task 2021-06-03T03:20:42.618Z] 03:20:42     INFO - Slowest: 1407ms - /tests/dom/events/test/test_coalesce_mousewheel.html
[task 2021-06-03T03:20:42.618Z] 03:20:42     INFO - SimpleTest START Loop 2
<...>
[task 2021-06-03T03:21:25.155Z] 03:21:25     INFO - SimpleTest START Loop 9
[task 2021-06-03T03:21:25.155Z] 03:21:25     INFO - TEST-START | dom/events/test/test_coalesce_mousewheel.html
[task 2021-06-03T03:21:25.356Z] 03:21:25     INFO - TEST-INFO | started process screenshot
[task 2021-06-03T03:21:25.435Z] 03:21:25     INFO - TEST-INFO | screenshot: exit 0
[task 2021-06-03T03:21:25.435Z] 03:21:25     INFO - Buffered messages logged at 03:21:25
[task 2021-06-03T03:21:25.435Z] 03:21:25     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | A valid string reason is expected 
[task 2021-06-03T03:21:25.435Z] 03:21:25     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | Reason cannot be empty 
[task 2021-06-03T03:21:25.436Z] 03:21:25     INFO - TEST-FAIL | dom/events/test/test_coalesce_mousewheel.html | The author of the test has indicated that flaky timeouts are expected.  Reason: Make sure we got all events. 
[task 2021-06-03T03:21:25.436Z] 03:21:25     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | Should have gotten 1 wheel event 
[task 2021-06-03T03:21:25.436Z] 03:21:25     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | A valid string reason is expected 
[task 2021-06-03T03:21:25.436Z] 03:21:25     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | Reason cannot be empty 
[task 2021-06-03T03:21:25.436Z] 03:21:25     INFO - TEST-FAIL | dom/events/test/test_coalesce_mousewheel.html | The author of the test has indicated that flaky timeouts are expected.  Reason: Make sure we got all events. 
[task 2021-06-03T03:21:25.436Z] 03:21:25     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | Should have gotten 1 wheel event 
[task 2021-06-03T03:21:25.436Z] 03:21:25     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | A valid string reason is expected 
[task 2021-06-03T03:21:25.436Z] 03:21:25     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | Reason cannot be empty 
[task 2021-06-03T03:21:25.437Z] 03:21:25     INFO - TEST-FAIL | dom/events/test/test_coalesce_mousewheel.html | The author of the test has indicated that flaky timeouts are expected.  Reason: Make sure we got all events. 
[task 2021-06-03T03:21:25.437Z] 03:21:25     INFO - Buffered messages finished
[task 2021-06-03T03:21:25.437Z] 03:21:25     INFO - TEST-UNEXPECTED-FAIL | dom/events/test/test_coalesce_mousewheel.html | Should have gotten 1 wheel event - got 2, expected 1
[task 2021-06-03T03:21:25.437Z] 03:21:25     INFO -     SimpleTest.is@SimpleTest/SimpleTest.js:500:14
[task 2021-06-03T03:21:25.437Z] 03:21:25     INFO -     runTests@dom/events/test/test_coalesce_mousewheel.html:101:7
[task 2021-06-03T03:21:25.437Z] 03:21:25     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | A valid string reason is expected 
[task 2021-06-03T03:21:25.437Z] 03:21:25     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | Reason cannot be empty 
[task 2021-06-03T03:21:25.437Z] 03:21:25     INFO - TEST-FAIL | dom/events/test/test_coalesce_mousewheel.html | The author of the test has indicated that flaky timeouts are expected.  Reason: Make sure we got all events. 
[task 2021-06-03T03:21:25.438Z] 03:21:25     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | Should have got 3 wheel event 
[task 2021-06-03T03:21:25.438Z] 03:21:25     INFO - GECKO(6560) | MEMORY STAT | vsize 595MB | vsizeMaxContiguous 1293MB | residentFast 61MB | heapAllocated 5MB
[task 2021-06-03T03:21:25.443Z] 03:21:25     INFO - TEST-OK | dom/events/test/test_coalesce_mousewheel.html | took 293ms
[task 2021-06-03T03:21:25.474Z] 03:21:25     INFO - TEST-START | Shutdown
[task 2021-06-03T03:21:25.474Z] 03:21:25     INFO - Passed:  107
[task 2021-06-03T03:21:25.474Z] 03:21:25     INFO - Failed:  1
[task 2021-06-03T03:21:25.474Z] 03:21:25     INFO - Todo:    36
[task 2021-06-03T03:21:25.475Z] 03:21:25     INFO - Mode:    e10s
[task 2021-06-03T03:21:25.475Z] 03:21:25     INFO - Slowest: 1417ms - /tests/dom/events/test/test_coalesce_mousewheel.html
[task 2021-06-03T03:21:25.475Z] 03:21:25     INFO - SimpleTest START Loop 10
[task 2021-06-03T03:21:25.475Z] 03:21:25     INFO - TEST-START | dom/events/test/test_coalesce_mousewheel.html

This started to fail on tier 2 jobs: Fail log

Summary: Intermittent TV dom/events/test/test_coalesce_mousewheel.html | Should have gotten 1 wheel event - got 2, expected 1 → Intermittent [tier 2] dom/events/test/test_coalesce_mousewheel.html | Should have gotten 1 wheel event - got 2, expected 1

I suspect we'll just want to skip this on the TV platform. Correct me if I'm wrong Botond but I don't think it really applies to that platform?

Flags: needinfo?(botond)

TV isn't really a platform; it's a special job that runs on commits that add or modify tests, and runs that test a large number of times, to try and detect intermittent failures early.

So, the fact that this test failed in the TV job suggests that there's an issue causing an intermittent failure, and we'll likely see it fail intermittently as part of regular test runs going forward. Whether it's worth investigating will depend on the frequency.

The main contribution of the TV job is that it tells us what commit introduced the intermittent failure, rather than having to eyeball pushlogs and guess.

Flags: needinfo?(botond)

Set release status flags based on info from the regressing bug 1712726

Started failing on tier 1 jobs: Failure log

Summary: Intermittent [tier 2] dom/events/test/test_coalesce_mousewheel.html | Should have gotten 1 wheel event - got 2, expected 1 → Intermittent dom/events/test/test_coalesce_mousewheel.html | Should have gotten 1 wheel event - got 2, expected 1

FYI: The test started to run Fission-xorigin tests again (bug 1715083). Therefore, the frequency of this intermittent failure may become higher.

I tried to rewrite the test as mochitest-chrome to synthesize wheel events in the main process and avoid unexpected IPCs and flushing reflows while synthesizing a set of wheel events. However, they fail more frequently!
https://treeherder.mozilla.org/jobs?repo=try&collapsedPushes=931912%2C931897&selectedTaskRun=GfjgG6_kRFmoMBM7k2Lw1g.0&revision=1ea9a26a4d697a8d9eb07a31fb243d37ebc3f13f

On the other hand, I checked BrowserChild::RecvMouseWheelEvent():
https://searchfox.org/mozilla-central/rev/c0fc8c4852e927b0ae75d893d35772b8c60ee06b/dom/ipc/BrowserChild.cpp#1846-1865

Then, it considers whether it dispatches an eWheel event or not only from the next IPC message in the remote process. It's odd. Is it really guaranteed that synthesized wheel events continuously from JS are coalesced into an event? It seems that we cannot test this strictly.

Flags: needinfo?(bugs)

Testing this is hard. I think Bas had to go through couple of iteration when tweaking the test. He might have some ideas how to make the test
less fragile or how to make it deal with different number wheel events.

Flags: needinfo?(bugs) → needinfo?(bas)

(In reply to Olli Pettay [:smaug] (vacation July 18 - 31) from comment #14)

Testing this is hard. I think Bas had to go through couple of iteration when tweaking the test. He might have some ideas how to make the test
less fragile or how to make it deal with different number wheel events.

Not really, when I had to tweak this to become less fragile the challenge I was dealing with was making sure all the events had arrived before measuring. In this case it appears the events are delivered 'separately' to the content process. I'm not sure what could cause that and it never occurred locally :(.

Flags: needinfo?(bas)

(In reply to Masayuki Nakano [:masayuki] (he/him)(JST, +0900) from comment #13)

I tried to rewrite the test as mochitest-chrome to synthesize wheel events in the main process and avoid unexpected IPCs and flushing reflows while synthesizing a set of wheel events. However, they fail more frequently!
https://treeherder.mozilla.org/jobs?repo=try&collapsedPushes=931912%2C931897&selectedTaskRun=GfjgG6_kRFmoMBM7k2Lw1g.0&revision=1ea9a26a4d697a8d9eb07a31fb243d37ebc3f13f

On the other hand, I checked BrowserChild::RecvMouseWheelEvent():
https://searchfox.org/mozilla-central/rev/c0fc8c4852e927b0ae75d893d35772b8c60ee06b/dom/ipc/BrowserChild.cpp#1846-1865

Then, it considers whether it dispatches an eWheel event or not only from the next IPC message in the remote process. It's odd. Is it really guaranteed that synthesized wheel events continuously from JS are coalesced into an event? It seems that we cannot test this strictly.

I had the same impression but people really really (understandably) wanted me to add a test for this when I made changes to coalescion, and none existed at that point :-).

Update:
There have been 54 failures within the last 7 days:
• 4 failures on Linux 18.04 x64 WebRender opt
• 2 failures on Linux 18.04 x64 WebRender debug
• 10 failures on Linux 18.04 x64 WebRender Shippable opt
• 3 failures on OS X 10.15 WebRender opt
• 19 failures on OS X 10.15 WebRender debug
• 2 failures on OS X 10.15 WebRender Shippable opt
• 1 failures on Windows 10 x86 WebRender debug
• 5 failures on Windows 10 x64 WebRender debug
• 4 failures on Windows 10 x64 WebRender opt
• 4 failures on Windows 10 x64 WebRender Shippable opt
Recent failure log: https://treeherder.mozilla.org/logviewer?job_id=346398769&repo=mozilla-central&lineNumber=4797

[task 2021-07-26T22:40:28.251Z] 22:40:28     INFO - TEST-START | dom/events/test/test_coalesce_mousewheel.html
[task 2021-07-26T22:40:28.260Z] 22:40:28     INFO - GECKO(2669) | [Child 2673, Main Thread] WARNING: early callback, or time went backwards: '!aAllowIdleDispatch', file /builds/worker/checkouts/gecko/xpcom/threads/IdleTaskRunner.cpp:179
[task 2021-07-26T22:40:28.270Z] 22:40:28     INFO - GECKO(2669) | [Child 2673, Main Thread] WARNING: early callback, or time went backwards: '!aAllowIdleDispatch', file /builds/worker/checkouts/gecko/xpcom/threads/IdleTaskRunner.cpp:179
[task 2021-07-26T22:40:28.288Z] 22:40:28     INFO - GECKO(2669) | [Parent 2669, Main Thread] WARNING: WebProgress Ignored: no longer current window global: file /builds/worker/checkouts/gecko/dom/ipc/BrowserParent.cpp:2928
[task 2021-07-26T22:40:28.318Z] 22:40:28     INFO - GECKO(2669) | [Child 2829, Main Thread] WARNING: Extra shutdown CC: 'i < NORMAL_SHUTDOWN_COLLECTIONS', file /builds/worker/checkouts/gecko/xpcom/base/nsCycleCollector.cpp:3357
[task 2021-07-26T22:40:28.330Z] 22:40:28     INFO - GECKO(2669) | [Child 2829, Main Thread] WARNING: NS_ENSURE_TRUE(Preferences::InitStaticMembers()) failed: file /builds/worker/checkouts/gecko/modules/libpref/Preferences.cpp:4438
[task 2021-07-26T22:40:28.450Z] 22:40:28     INFO - GECKO(2669) | ### XPCOM_MEM_BLOAT_LOG defined -- logging bloat/leaks to /var/folders/_b/_62qvbkx445dym012mj98plm000014/T/tmpu94h8ihb.mozrunner/runtests_leaks_tab_pid2833.log
[task 2021-07-26T22:40:28.450Z] 22:40:28     INFO - GECKO(2669) | [2833, Main Thread] WARNING: XPCOM_MEM_BLOAT_LOG is set, disabling native allocations.: file /builds/worker/checkouts/gecko/tools/profiler/core/platform.cpp:250
[task 2021-07-26T22:40:28.530Z] 22:40:28     INFO - TEST-INFO | started process screencapture
[task 2021-07-26T22:40:28.638Z] 22:40:28     INFO - TEST-INFO | screencapture: exit 0
[task 2021-07-26T22:40:28.639Z] 22:40:28     INFO - Buffered messages logged at 22:40:28
[task 2021-07-26T22:40:28.639Z] 22:40:28     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | A valid string reason is expected 
[task 2021-07-26T22:40:28.639Z] 22:40:28     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | Reason cannot be empty 
[task 2021-07-26T22:40:28.640Z] 22:40:28     INFO - TEST-FAIL | dom/events/test/test_coalesce_mousewheel.html | The author of the test has indicated that flaky timeouts are expected.  Reason: Make sure we got all events. 
[task 2021-07-26T22:40:28.640Z] 22:40:28     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | Should have gotten 1 wheel event 
[task 2021-07-26T22:40:28.641Z] 22:40:28     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | A valid string reason is expected 
[task 2021-07-26T22:40:28.641Z] 22:40:28     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | Reason cannot be empty 
[task 2021-07-26T22:40:28.641Z] 22:40:28     INFO - TEST-FAIL | dom/events/test/test_coalesce_mousewheel.html | The author of the test has indicated that flaky timeouts are expected.  Reason: Make sure we got all events. 
[task 2021-07-26T22:40:28.642Z] 22:40:28     INFO - Buffered messages finished
[task 2021-07-26T22:40:28.642Z] 22:40:28     INFO - TEST-UNEXPECTED-FAIL | dom/events/test/test_coalesce_mousewheel.html | Should have gotten 1 wheel event - got 2, expected 1
[task 2021-07-26T22:40:28.642Z] 22:40:28     INFO -     SimpleTest.is@SimpleTest/SimpleTest.js:500:14
[task 2021-07-26T22:40:28.642Z] 22:40:28     INFO -     runTests@dom/events/test/test_coalesce_mousewheel.html?currentTestURL=dom%2Fevents%2Ftest%2Ftest_coalesce_mousewheel.html&closeWhenDone=1&showTestReport=false&expected=pass:102:7
[task 2021-07-26T22:40:28.643Z] 22:40:28     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | A valid string reason is expected 
[task 2021-07-26T22:40:28.643Z] 22:40:28     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | Reason cannot be empty 
[task 2021-07-26T22:40:28.644Z] 22:40:28     INFO - TEST-FAIL | dom/events/test/test_coalesce_mousewheel.html | The author of the test has indicated that flaky timeouts are expected.  Reason: Make sure we got all events. 
[task 2021-07-26T22:40:28.644Z] 22:40:28     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | Should have gotten 1 wheel event 
[task 2021-07-26T22:40:28.678Z] 22:40:28     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | A valid string reason is expected 
[task 2021-07-26T22:40:28.679Z] 22:40:28     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | Reason cannot be empty 
[task 2021-07-26T22:40:28.679Z] 22:40:28     INFO - TEST-FAIL | dom/events/test/test_coalesce_mousewheel.html | The author of the test has indicated that flaky timeouts are expected.  Reason: Make sure we got all events. 
[task 2021-07-26T22:40:28.848Z] 22:40:28     INFO - TEST-PASS | dom/events/test/test_coalesce_mousewheel.html | Should have got 3 wheel event 
[task 2021-07-26T22:40:28.896Z] 22:40:28     INFO - GECKO(2669) | MEMORY STAT | vsize 6630MB | residentFast 86MB | heapAllocated 7MB
[task 2021-07-26T22:40:28.910Z] 22:40:28     INFO - TEST-OK | dom/events/test/test_coalesce_mousewheel.html | took 659ms
[task 2021-07-26T22:40:28.927Z] 22:40:28     INFO - GECKO(2669) | [Parent 2669, Main Thread] WARNING: Received `load` event on unbridged BrowserParent!: file /builds/worker/checkouts/gecko/dom/ipc/BrowserParent.cpp:3896
[task 2021-07-26T22:40:28.928Z] 22:40:28     INFO - GECKO(2669) | [Parent 2669, Main Thread] WARNING: Received `load` event on unbridged BrowserParent!: file /builds/worker/checkouts/gecko/dom/ipc/BrowserParent.cpp:3896
[task 2021-07-26T22:40:28.928Z] 22:40:28     INFO - GECKO(2669) | [Parent 2669, Main Thread] WARNING: WebProgress Ignored: no longer current window global: file /builds/worker/checkouts/gecko/dom/ipc/BrowserParent.cpp:2928
[task 2021-07-26T22:40:28.931Z] 22:40:28     INFO - GECKO(2669) | [Child 2830, Main Thread] WARNING: nsAppShell::Exit() called redundantly: file /builds/worker/checkouts/gecko/widget/cocoa/nsAppShell.mm:762
[task 2021-07-26T22:40:28.932Z] 22:40:28     INFO - GECKO(2669) | ###!!! [Parent][RunMessage] Error: Channel closing: too late to send/recv, messages will be lost
[task 2021-07-26T22:40:28.932Z] 22:40:28     INFO - GECKO(2669) | ###!!! [Parent][RunMessage] Error: Channel closing: too late to send/recv, messages will be lost
[task 2021-07-26T22:40:28.942Z] 22:40:28     INFO - TEST-START | dom/events/test/test_continuous_wheel_events.html
Whiteboard: [stockwell needswork:owner]

(In reply to Bas Schouten (:bas.schouten) from comment #18)

and none existed at that point :-).

Wow, that's big hint for me. I checked what IPC message comes unexpectedly with the chrome test, then, I see PWindowGlobal::Msg_RawMessage__ID, it's used by actors:
https://searchfox.org/mozilla-central/search?q=SendRawMessage&path=&case=false&regexp=false

On the other hand, I'm currently trying to check with the plain test. However, I've not reproduced this intermittent failure yet. Keep trying...

Assignee: nobody → masayuki
Status: NEW → ASSIGNED

Hmm, various IPC messages appear...:

  • PHttpChannel::Msg_DeleteSelf
  • PBrowser::Msg_SynthMouseMoveEvent
  • PContent::Msg_FlushFOGData
  • PContent::Msg_AddPermission
  • PContent::Msg_PreferenceUpdate
  • PContent::Msg_GMPsChanged
  • PContent::Msg_NotifyVisited

I think that we can ignore those messages if received event is synthesized for tests.

  • PHttpChannel::Msg_DeleteSelf

I think that this can be ignored in actual user input because it's to destroy an HTTP session, which perhaps doesn't unpdate anything.

  • PBrowser::Msg_SynthMouseMoveEvent

This updates style. So, we shouldn't ignore this.

  • PContent::Msg_FlushFOGData

This is a message for telemetry. So, we can ignore this.

  • PContent::Msg_AddPermission

I'm not sure this case yet.

  • PContent::Msg_PreferenceUpdate

I think that pref being updated between wheel operation shouldn't affect web content. So, this must be able to be ignored.

  • PContent::Msg_GMPsChanged

I'm not sure this message yet.

  • PContent::Msg_NotifyVisited

I think that we can ignore this message because this must not repaint content synchronous.

OS: Unspecified → All
Priority: P5 → P3
Hardware: Unspecified → All

The following IPC messages may be inserted before wheel event message
accidentally.

  • PHttpChannel::Msg_DeleteSelf
  • PBrowser::Msg_SynthMouseMoveEvent
  • PContent::Msg_FlushFOGData
  • PContent::Msg_AddPermission
  • PContent::Msg_PreferenceUpdate
  • PContent::Msg_GMPsChanged
  • PContent::Msg_NotifyVisited

Only PBrowser::Msg_SynthMouseMoveEvent can be avoided by the test with
moving native mouse cursor first, but the others are really accidental
messages for the test. For avoiding current intermittent failures, we should
make BrowserChild::RecvMouseWheelEvent ignore the unexpected messages
only while a test is running for testing mouse wheel coalescing.

Perhaps, PContent::Msg_FlushFOGData, PContent::Msg_PreferenceUpdate and
PContent::Msg_NotifyVisited are also safe for real user input because
they must not affect web content, but in this bug, we shouldn't change any
real behavior.

Even with the previous patch, the test may fail if next wheel event is not
in the queue. Therefore, we should make each test retry until getting
expected result if deltaMode and deltaY values of wheel events are not
wrong.

Depends on D121060

Whiteboard: [stockwell disable-recommended]
Attachment #9233458 - Attachment is obsolete: true
Attachment #9233459 - Attachment description: Bug 1714285 - part 2: Make `test_coalesce_mousewheel.html` retry to get ideal result unless `wheel` event values are wrong r=smaug! → Bug 1714285 - Make `test_coalesce_mousewheel.html` retry to get ideal result unless `wheel` event values are wrong r=smaug!
Pushed by masayuki@d-toybox.com: https://hg.mozilla.org/integration/autoland/rev/45557f9d3333 Make `test_coalesce_mousewheel.html` retry to get ideal result unless `wheel` event values are wrong r=smaug
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 92 Branch
No longer blocks: 1717656
Has Regression Range: --- → yes
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: