Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.0.0 Beta 1
-
None
-
Mac OSX
-
-
037d1e18e39f24b8ebb2772c20444d4b44cfb12b
Description
When runnig tst_qgraphicsview with https://codereview.qt-project.org/#change,29929 on Mac, the test replayMouseMove (and others) crash with stacks like the below one.
It does not happen when the test is executed on its own, so, it looks
like there left-over events for no-longer existing windows from previous tests.
2012-07-19 16:39:36.224 tst_qgraphicsview[88720:a0f] *** __NSAutoreleaseNoPool(): Object 0x10501ba70 of class NSConcreteMutableData autoreleased with no pool in place - just leaking
2012-07-19 16:39:36.224 tst_qgraphicsview[88720:a0f] *** __NSAutoreleaseNoPool(): Object 0x10501bc00 of class NSConcreteMutableData autoreleased with no pool in place - just leaking
2012-07-19 16:39:36.225 tst_qgraphicsview[88720:a0f] *** __NSAutoreleaseNoPool(): Object 0x10501c0a0 of class NSConcreteMutableData autoreleased with no pool in place - just leaking
2012-07-19 16:39:36.225 tst_qgraphicsview[88720:a0f] *** __NSAutoreleaseNoPool(): Object 0x10501c1a0 of class NSConcreteMutableData autoreleased with no pool in place - just leaking
2012-07-19 16:39:36.252 tst_qgraphicsview[88720:a0f] *** __NSAutoreleaseNoPool(): Object 0x105018e00 of class __NSFastEnumerationEnumerator autoreleased with no pool in place - just leaking
PASS : tst_QGraphicsView::acceptMousePressEvent()
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x000000e800000138
0x00000001018e7b30 in QBasicAtomicOps<4>::ref<int> (_q_value=@0xe800000138) at qatomic_x86.h:199
199 : "memory");
(gdb) where
#0 0x00000001018e7b30 in QBasicAtomicOps<4>::ref<int> (_q_value=@0xe800000138) at qatomic_x86.h:199
#1 0x00000001018e7b6e in QBasicAtomicInteger<int>::ref (this=0xe800000138) at qbasicatomic.h:143
#2 0x00000001019c1ebb in QtSharedPointer::ExternalRefCountData::getAndRef (obj=0x1050116b0) at qsharedpointer.cpp:1201
#3 0x0000000100f62cab in QWeakPointer<QObject>::QWeakPointer<QObject> (this=0x10500fd60, ptr=0x1050116b0, unnamed_arg=true) at qsharedpointer_impl.h:613
#4 0x0000000100f84d06 in QPointerBase::QPointerBase (this=0x10500fd60, p=0x1050116b0) at qpointer.h:61
#5 0x0000000100f84d2f in QPointer<QWindow>::QPointer (this=0x10500fd60, p=0x1050116b0) at qpointer.h:83
#6 0x0000000100f699da in QWindowSystemInterfacePrivate::UserEvent::UserEvent (this=0x10500fd50, w=0x1050116b0, time=4330176222, t=QWindowSystemInterfacePrivate::Mouse) at qwindowsysteminterface_p.h:142
#7 0x0000000100f69a3d in QWindowSystemInterfacePrivate::InputEvent::InputEvent (this=0x10500fd50, w=0x1050116b0, time=4330176222, t=QWindowSystemInterfacePrivate::Mouse, mods=
#8 0x0000000100f6a1fc in QWindowSystemInterfacePrivate::MouseEvent::MouseEvent (this=0x10500fd50, w=0x1050116b0, time=4330176222, local=@0x7fff5fbfd188, global=@0x7fff5fbfd178, b={i = 0}
, mods=
{i = 0}) at qwindowsysteminterface_p.h:159#9 0x0000000100f67891 in QWindowSystemInterface::handleMouseEvent (w=0x1050116b0, timestamp=4330176222, local=@0x7fff5fbfd188, global=@0x7fff5fbfd178, b={i = 0}
, mods=
{i = 0}) at qwindowsysteminterface.cpp:148#10 0x000000010611bcc4 in -[QNSView handleMouseEvent:] (self=0x105017ec0, _cmd=0x7fff8172bdff, theEvent=0x10501b140) at qnsview.mm:310
#11 0x000000010611b656 in -[QNSView mouseMoved:] (self=0x105017ec0, _cmd=0x7fff817390ae, theEvent=0x10501b140) at qnsview.mm:345
#12 0x00007fff811190c7 in -[NSWindow sendEvent:] ()
#13 0x00007fff8104d8f1 in -[NSApplication sendEvent:] ()
#14 0x000000010612647b in QCocoaEventDispatcher::processEvents (this=0x102519c20, flags={i = 0}
) at qcocoaeventdispatcher.mm:647
#15 0x0000000101c0b55d in QCoreApplication::processEvents (flags=
#16 0x00000001000056da in qWait (ms=20) at qtestsystem.h:66
#17 0x0000000100006ede in mouseEvent (action=QTest::MouseMove, widget=0x105016d00, button=Qt::NoButton, stateKey={i = 0}
, pos=
{xp = 312, yp = 232}, delay=0) at qtestmouse.h:193#18 0x000000010006dbc0 in QTest::mouseMove (widget=0x105016d00, pos={xp = 312, yp = 232}
, delay=-1) at qtestmouse.h:224
#19 0x00000001000074e6 in sendMouseMove (widget=0x105016d00, point=@0x7fff5fbfe190, button=Qt::LeftButton, buttons=
) at tst_qgraphicsview.cpp:102
#20 0x0000000100023e3f in tst_QGraphicsView::replayMouseMove (this=0x7fff5fbff4f8) at tst_qgraphicsview.cpp:2729
#21 0x0000000100004eab in tst_QGraphicsView::qt_static_metacall (_o=0x7fff5fbff4f8, _c=QMetaObject::InvokeMetaMethod, _id=60, _a=0x7fff5fbfe3c8) at tst_qgraphicsview.moc:560
#22 0x0000000101c1f5d5 in QMetaMethod::invoke (this=0x7fff5fbfe728, object=0x7fff5fbff4f8, connectionType=Qt::DirectConnection, returnValue={<QGenericArgument> = {_data = 0x0, _name = 0x0}, <No data fields>}, val0={_data = 0x0, _name = 0x0}, val1={_data = 0x0, _name = 0x0}, val2={_data = 0x0, _name = 0x0}, val3={_data = 0x0, _name = 0x0}, val4={_data = 0x0, _name = 0x0}, val5={_data = 0x0, _name = 0x0}, val6={_data = 0x0, _name = 0x0}, val7={_data = 0x0, _name = 0x0}, val8={_data = 0x0, _name = 0x0}, val9={_data = 0x0, _name = 0x0}) at qmetaobject.cpp:2124
#23 0x0000000101c2248e in QMetaObject::invokeMethod (obj=0x7fff5fbff4f8, member=0x10500bc80 "replayMouseMove", type=Qt::DirectConnection, ret={<QGenericArgument> = {_data = 0x0, _name = 0x0}, <No data fields>}, val0={_data = 0x0, _name = 0x0}, val1={_data = 0x0, _name = 0x0}, val2={_data = 0x0, _name = 0x0}, val3={_data = 0x0, _name = 0x0}, val4={_data = 0x0, _name = 0x0}, val5={_data = 0x0, _name = 0x0}, val6={_data = 0x0, _name = 0x0}, val7={_data = 0x0, _name = 0x0}, val8={_data = 0x0, _name = 0x0}, val9={_data = 0x0, _name = 0x0}) at qmetaobject.cpp:1459
#24 0x0000000100efbd1c in QMetaObject::invokeMethod (obj=0x7fff5fbff4f8, member=0x10500bc80 "replayMouseMove", type=Qt::DirectConnection, val0={_data = 0x0, _name = 0x0}, val1={_data = 0x0, _name = 0x0}, val2={_data = 0x0, _name = 0x0}, val3={_data = 0x0, _name = 0x0}, val4={_data = 0x0, _name = 0x0}, val5={_data = 0x0, _name = 0x0}, val6={_data = 0x0, _name = 0x0}, val7={_data = 0x0, _name = 0x0}, val8={_data = 0x0, _name = 0x0}, val9={_data = 0x0, _name = 0x0}) at qobjectdefs.h:399
#25 0x0000000100ef1f3e in qInvokeTestMethodDataEntry (slot=0x10500bc80 "replayMouseMove") at qtestcase.cpp:1631
#26 0x0000000100ef2f59 in qInvokeTestMethod (slotName=0x10500bde8 "replayMouseMove()", data=0x0) at qtestcase.cpp:1748
#27 0x0000000100ef3875 in qInvokeTestMethods (testObject=0x7fff5fbff4f8) at qtestcase.cpp:1902
#28 0x0000000100ef65ff in QTest::qExec (testObject=0x7fff5fbff4f8, argc=1, argv=0x7fff5fbff570) at qtestcase.cpp:2117
#29 0x000000010000538e in main (argc=1, argv=0x7fff5fbff570) at tst_qgraphicsview.cpp:4500
Current language: auto; currently objective-c++
Warning: the current language does not match this frame.