Closed
Bug 1149412
Opened 11 years ago
Closed 11 years ago
F/MOZ_Assert( 179): Assertion failure: mTouchMoveEvents.empty(), at ../../../gecko/widget/gonk/GeckoTouchDispatcher.cpp:172
Categories
(Core Graveyard :: Widget: Gonk, defect)
Tracking
(blocking-b2g:2.2+, firefox38 wontfix, firefox39 wontfix, firefox40 fixed, b2g-v2.2 fixed, b2g-master fixed)
People
(Reporter: kanru, Assigned: kats)
References
Details
(Keywords: regression)
Attachments
(1 file)
|
949 bytes,
patch
|
mchang
:
review+
bajaj
:
approval-mozilla-b2g37+
|
Details | Diff | Splinter Review |
STR:
1. Build B2G with B2G_DEBUG=y and MOZ_ENABLE_WARNINGS_AS_ERRORS=1
2. Flash and reboot
3. Touch to unlock screen
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 179.654]
0xb4ffa55e in mozilla::GeckoTouchDispatcher::DispatchTouchMoveEvents (this=0xafd2dfa0, this@entry=0xaf887ba0, aVsyncTime=...) at ../../../gecko/widget/gonk/GeckoTouchDispatcher.cpp:172
172 MOZ_ASSERT(mTouchMoveEvents.empty());
(gdb) bt
#0 0xb4ffa55e in mozilla::GeckoTouchDispatcher::DispatchTouchMoveEvents (this=0xafd2dfa0, this@entry=0xaf887ba0, aVsyncTime=...) at ../../../gecko/widget/gonk/GeckoTouchDispatcher.cpp:172
#1 0xb4ffa69c in mozilla::GeckoTouchDispatcher::NotifyVsync (this=0xaf887ba0, this@entry=0xafd2dfa0, aVsyncTimestamp=...) at ../../../gecko/widget/gonk/GeckoTouchDispatcher.cpp:103
#2 0xb4ffa6c8 in mozilla::GeckoTouchDispatcher::DispatchTouchNonMoveEvent (this=0xafd2dfa0, aInput=...) at ../../../gecko/widget/gonk/GeckoTouchDispatcher.cpp:153
#3 0xb4ff9dcc in DispatchToMethod<mozilla::GeckoTouchDispatcher, void (mozilla::GeckoTouchDispatcher::*)(mozilla::MultiTouchInput), mozilla::MultiTouchInput> (arg=..., method=
(void (mozilla::GeckoTouchDispatcher::*)(mozilla::GeckoTouchDispatcher * const, mozilla::MultiTouchInput)) 0xb4ffa6a5 <mozilla::GeckoTouchDispatcher::DispatchTouchNonMoveEvent(mozilla::MultiTouchInput)>,
obj=<optimized out>) at ../../../gecko/ipc/chromium/src/base/tuple.h:393
#4 RunnableMethod<mozilla::GeckoTouchDispatcher, void (mozilla::GeckoTouchDispatcher::*)(mozilla::MultiTouchInput), Tuple1<mozilla::MultiTouchInput> >::Run (this=<optimized out>)
at ../../../gecko/ipc/chromium/src/base/task.h:310
#5 0xb42cd9b0 in MessageLoop::RunTask (this=0xaf887cc0, task=0xabf4fb00) at ../../../gecko/ipc/chromium/src/base/message_loop.cc:361
#6 0xb42d0876 in MessageLoop::DeferOrRunPendingTask (this=<optimized out>, pending_task=...) at ../../../gecko/ipc/chromium/src/base/message_loop.cc:369
#7 0xb42d273c in DoWork (this=<optimized out>) at ../../../gecko/ipc/chromium/src/base/message_loop.cc:456
#8 MessageLoop::DoWork (this=0xaf887cc0) at ../../../gecko/ipc/chromium/src/base/message_loop.cc:435
#9 0xb42ce2a8 in base::MessagePumpDefault::Run (this=0xafdef920, delegate=0xaf887cc0) at ../../../gecko/ipc/chromium/src/base/message_pump_default.cc:34
#10 0xb42ce224 in MessageLoop::RunInternal (this=this@entry=0xaf887cc0) at ../../../gecko/ipc/chromium/src/base/message_loop.cc:233
#11 0xb42ce23e in RunHandler (this=0xaf887cc0) at ../../../gecko/ipc/chromium/src/base/message_loop.cc:226
#12 MessageLoop::Run (this=this@entry=0xaf887cc0) at ../../../gecko/ipc/chromium/src/base/message_loop.cc:200
#13 0xb42d442c in base::Thread::ThreadMain (this=0xafdf2460) at ../../../gecko/ipc/chromium/src/base/thread.cc:170
#14 0xb42d2a20 in ThreadFunc (closure=<optimized out>) at ../../../gecko/ipc/chromium/src/base/platform_thread_posix.cc:39
#15 0xb6e91174 in __thread_entry (func=0xb42d2a19 <ThreadFunc(void*)>, arg=0xafdf2460, tls=0xaf887dd0) at bionic/libc/bionic/pthread_create.cpp:105
#16 0xb6e9130c in pthread_create (thread_out=0xafdf2468, attr=<optimized out>, start_routine=0xb42d2a19 <ThreadFunc(void*)>, arg=0x78) at bionic/libc/bionic/pthread_create.cpp:224
#17 0x00000000 in ?? ()
(gdb) p mTouchMoveEvents
$1 = {<std::priv::_Vector_base<mozilla::MultiTouchInput, std::allocator<mozilla::MultiTouchInput> >> = {_M_start = 0xaadeaa00, _M_finish = 0xaadeaa20,
_M_end_of_storage = {<std::allocator<mozilla::MultiTouchInput>> = {<std::__stlport_class<std::allocator<mozilla::MultiTouchInput> >> = {<No data fields>}, <No data fields>},
_M_data = 0xaadeaa80}}, <No data fields>}
| Reporter | ||
Updated•11 years ago
|
OS: Linux → Gonk (Firefox OS)
Hardware: x86_64 → All
| Reporter | ||
Updated•11 years ago
|
| Reporter | ||
Comment 1•11 years ago
|
||
Build ID 20150331144843
Gaia Revision febc780ed1ba8e52d5797f36316a952548eda053
Gaia Date 2015-03-06 02:42:35
Gecko Revision n/a
Gecko Version 40.0a1
Device Name mako
Firmware(Release) 4.4.2
Firmware(Incremental) eng.kanru.20141107.093658
Firmware Date Fri Nov 7 09:37:09 CST 2014
Bootloader MAKOZ20i
| Assignee | ||
Comment 2•11 years ago
|
||
Thanks for catching this!
Assignee: nobody → bugmail.mozilla
Flags: needinfo?(bugmail.mozilla)
| Assignee | ||
Comment 3•11 years ago
|
||
The assertion is actually wrong. In the resampling case, we leave one move event in the queue to be resampled in the future. In fact that's the reason I added the flag in the first place, instead of just using mTouchMoveEvents.size() as the condition. The flag really means "do we have touch moves pending in the queue that we still need to process".
Attachment #8586053 -
Flags: review?(mchang)
Updated•11 years ago
|
Attachment #8586053 -
Flags: review?(mchang) → review+
| Assignee | ||
Comment 4•11 years ago
|
||
Updated•11 years ago
|
blocking-b2g: --- → 2.2?
| Assignee | ||
Comment 5•11 years ago
|
||
Assuming that was a typo
Comment 6•11 years ago
|
||
Status: NEW → RESOLVED
Closed: 11 years ago
status-firefox40:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla40
Updated•11 years ago
|
blocking-b2g: 2.2? → 2.2+
| Assignee | ||
Comment 7•11 years ago
|
||
Comment on attachment 8586053 [details] [diff] [review]
Remove assertion
NOTE: Please see https://wiki.mozilla.org/Release_Management/B2G_Landing to better understand the B2G approval process and landings.
[Approval Request Comment]
Bug caused by (feature/regressing bug #): bug 1146987
User impact if declined: debug builds with bug 1146987 may trigger asserions and crash
Testing completed: none really, it just takes out the incorrect assertion that was causing crashes
Risk to taking this patch (and alternatives if risky): very low, affects debug builds only
String or UUID changes made by this patch: none
Attachment #8586053 -
Flags: approval-mozilla-b2g37?
| Assignee | ||
Updated•11 years ago
|
status-b2g-master:
--- → fixed
Updated•11 years ago
|
Attachment #8586053 -
Flags: approval-mozilla-b2g37? → approval-mozilla-b2g37+
Comment 8•11 years ago
|
||
Updated•7 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•