-
Bug
-
Resolution: Out of scope
-
P2: Important
-
None
-
5.8.0
-
None
-
Mac OSX 10.12.3 or later
I've created a QML TableView with two columns and about 430 rows.
This scrolls quickly on Mac OSX using the touchpad and two-finger slide to scroll up and down vertically.
However, if I scroll too quickly up and down, the application seg faults. This appears to be deep within the "wheel event" handler.
A backtrace from lldb is shown below. The original QML file is attached. I am updating the root.parameter_model text property from python. However, the crash happens long after the model has been updated.
thread #1: tid = 0x4be5e1, 0x0000000104ac21a1 QtQml`___lldb_unnamed_symbol2795$$QtQml + 33, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x18)
* frame #0: 0x0000000104ac21a1 QtQml`___lldb_unnamed_symbol2795$$QtQml + 33
frame #1: 0x0000000104b393a5 QtQml`QV4::QObjectWrapper::getQmlProperty(QQmlContextData*, QV4::String*, QV4::QObjectWrapper::RevisionMode, bool*, bool) const + 165
frame #2: 0x0000000104b3b517 QtQml`QV4::QObjectWrapper::getQmlProperty(QV4::ExecutionEngine*, QQmlContextData*, QObject*, QV4::String*, QV4::QObjectWrapper::RevisionMode, bool*) + 375
frame #3: 0x0000000104be0d03 QtQml`QV4::QmlContextWrapper::get(QV4::Managed const*, QV4::String*, bool*) + 787
frame #4: 0x0000000104ac2877 QtQml`QV4::ExecutionContext::getProperty(QV4::String*) + 679
frame #5: 0x0000000104b518fb QtQml`QV4::Runtime::getActivationProperty(QV4::ExecutionEngine*, int) + 59
frame #6: 0x000000011112384e
frame #7: 0x0000000104ae2422 QtQml`___lldb_unnamed_symbol3077$$QtQml + 626
frame #8: 0x0000000104bd6d81 QtQml`QQmlJavaScriptExpression::evaluate(QV4::CallData*, bool*) + 689
frame #9: 0x0000000104b80e6e QtQml`QQmlBoundSignalExpression::evaluate(void**) + 1086
frame #10: 0x0000000104b815ad QtQml`___lldb_unnamed_symbol4317$$QtQml + 445
frame #11: 0x0000000104bb8915 QtQml`QQmlNotifier::emitNotify(QQmlNotifierEndpoint*, void**) + 741
frame #12: 0x00000001039930f9 QtCore`QMetaObject::activate(QObject*, int, int, void**) + 121
frame #13: 0x00000001047be40a QtQuick`___lldb_unnamed_symbol5083$$QtQuick + 26
frame #14: 0x0000000104771e66 QtQuick`___lldb_unnamed_symbol3961$$QtQuick + 38
frame #15: 0x00000001046d1e44 QtQuick`QQuickItem::geometryChanged(QRectF const&, QRectF const&) + 564
frame #16: 0x00000001046d75ee QtQuick`QQuickItem::setY(double) + 158
frame #17: 0x000000010482fae7 QtQuick`QQuickFlickable::qt_metacall(QMetaObject::Call, int, void**) + 71
frame #18: 0x00000001048416b8 QtQuick`QQuickItemView::qt_metacall(QMetaObject::Call, int, void**) + 24
frame #19: 0x0000000104830c08 QtQuick`___lldb_unnamed_symbol6585$$QtQuick + 24
frame #20: 0x0000000104b3c191 QtQml`QV4::QObjectWrapper::setProperty(QV4::ExecutionEngine*, QObject*, QQmlPropertyData*, QV4::Value const&) + 2817
frame #21: 0x0000000104b3d2da QtQml`QV4::QObjectWrapper::put(QV4::Managed*, QV4::String*, QV4::Value const&) + 314
frame #22: 0x0000000104b50e68 QtQml`QV4::Runtime::setProperty(QV4::ExecutionEngine*, QV4::Value const&, int, QV4::Value const&) + 104
frame #23: 0x0000000111125d1b
frame #24: 0x0000000104ae2422 QtQml`___lldb_unnamed_symbol3077$$QtQml + 626
frame #25: 0x0000000104bd6d81 QtQml`QQmlJavaScriptExpression::evaluate(QV4::CallData*, bool*) + 689
frame #26: 0x0000000104b80e6e QtQml`QQmlBoundSignalExpression::evaluate(void**) + 1086
frame #27: 0x0000000104b815ad QtQml`___lldb_unnamed_symbol4317$$QtQml + 445
frame #28: 0x0000000104bb8915 QtQml`QQmlNotifier::emitNotify(QQmlNotifierEndpoint*, void**) + 741
frame #29: 0x00000001039930f9 QtCore`QMetaObject::activate(QObject*, int, int, void**) + 121
frame #30: 0x000000011103a2f0 libqtquickcontrolsplugin.dylib`___lldb_unnamed_symbol602$$libqtquickcontrolsplugin.dylib + 592
frame #31: 0x00000001046d93aa QtQuick`QQuickItem::event(QEvent*) + 378
frame #32: 0x0000000102bf460d QtWidgets`QApplicationPrivate::notify_helper(QObject*, QEvent*) + 301
frame #33: 0x0000000102bf59b1 QtWidgets`QApplication::notify(QObject*, QEvent*) + 369
frame #34: 0x000000010264ba82 QtWidgets.so`sipQApplication::notify(QObject*, QEvent*) + 114
frame #35: 0x0000000103961f84 QtCore`QCoreApplication::notifyInternal2(QObject*, QEvent*) + 164
frame #36: 0x00000001046e5411 QtQuick`QQuickWindow::sendEvent(QQuickItem*, QEvent*) + 97
frame #37: 0x00000001046ebd66 QtQuick`QQuickWindowPrivate::deliverWheelEvent(QQuickItem*, QWheelEvent*) + 422
frame #38: 0x00000001046ebcb6 QtQuick`QQuickWindowPrivate::deliverWheelEvent(QQuickItem*, QWheelEvent*) + 246
frame #39: 0x00000001046ebcb6 QtQuick`QQuickWindowPrivate::deliverWheelEvent(QQuickItem*, QWheelEvent*) + 246
frame #40: 0x00000001046ebcb6 QtQuick`QQuickWindowPrivate::deliverWheelEvent(QQuickItem*, QWheelEvent*) + 246
frame #41: 0x00000001046ebcb6 QtQuick`QQuickWindowPrivate::deliverWheelEvent(QQuickItem*, QWheelEvent*) + 246
frame #42: 0x00000001046ebcb6 QtQuick`QQuickWindowPrivate::deliverWheelEvent(QQuickItem*, QWheelEvent*) + 246
frame #43: 0x00000001046ebcb6 QtQuick`QQuickWindowPrivate::deliverWheelEvent(QQuickItem*, QWheelEvent*) + 246
frame #44: 0x00000001046ebcb6 QtQuick`QQuickWindowPrivate::deliverWheelEvent(QQuickItem*, QWheelEvent*) + 246
frame #45: 0x00000001046ebcb6 QtQuick`QQuickWindowPrivate::deliverWheelEvent(QQuickItem*, QWheelEvent*) + 246
frame #46: 0x00000001046ebcb6 QtQuick`QQuickWindowPrivate::deliverWheelEvent(QQuickItem*, QWheelEvent*) + 246
frame #47: 0x00000001046ebcb6 QtQuick`QQuickWindowPrivate::deliverWheelEvent(QQuickItem*, QWheelEvent*) + 246
frame #48: 0x00000001046ebcb6 QtQuick`QQuickWindowPrivate::deliverWheelEvent(QQuickItem*, QWheelEvent*) + 246
frame #49: 0x00000001046ebcb6 QtQuick`QQuickWindowPrivate::deliverWheelEvent(QQuickItem*, QWheelEvent*) + 246
frame #50: 0x00000001046ec0d9 QtQuick`QQuickWindow::wheelEvent(QWheelEvent*) + 761
frame #51: 0x00000001044f675a QtQuick.so`sipQQuickView::wheelEvent(QWheelEvent*) + 106
frame #52: 0x0000000103274421 QtGui`QWindow::event(QEvent*) + 561
frame #53: 0x00000001046e8e59 QtQuick`QQuickWindow::event(QEvent*) + 681
frame #54: 0x00000001044f71ba QtQuick.so`sipQQuickView::event(QEvent*) + 106
frame #55: 0x0000000102bf460d QtWidgets`QApplicationPrivate::notify_helper(QObject*, QEvent*) + 301
frame #56: 0x0000000102bf59b1 QtWidgets`QApplication::notify(QObject*, QEvent*) + 369
frame #57: 0x000000010264ba82 QtWidgets.so`sipQApplication::notify(QObject*, QEvent*) + 114
frame #58: 0x0000000103961f84 QtCore`QCoreApplication::notifyInternal2(QObject*, QEvent*) + 164
frame #59: 0x00000001032664ee QtGui`QGuiApplicationPrivate::processWheelEvent(QWindowSystemInterfacePrivate::WheelEvent*) + 846
frame #60: 0x000000010324ea9b QtGui`QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 155
frame #61: 0x000000010897f6be libqcocoa.dylib`___lldb_unnamed_symbol465$$libqcocoa.dylib + 1774
frame #62: 0x0000000103dce887 QtCore.so`meth_QCoreApplication_processEvents(_object*, _object*, _object*) + 151
frame #63: 0x000000010062c86a Python`PyEval_EvalFrameEx + 26934
frame #64: 0x00000001006304f1 Python`fast_function + 264
frame #65: 0x000000010062c78f Python`PyEval_EvalFrameEx + 26715
frame #66: 0x00000001006304f1 Python`fast_function + 264
frame #67: 0x000000010062c78f Python`PyEval_EvalFrameEx + 26715
frame #68: 0x00000001006304f1 Python`fast_function + 264
frame #69: 0x000000010062c78f Python`PyEval_EvalFrameEx + 26715
frame #70: 0x00000001006304f1 Python`fast_function + 264
frame #71: 0x000000010062c78f Python`PyEval_EvalFrameEx + 26715
frame #72: 0x00000001006304f1 Python`fast_function + 264
frame #73: 0x000000010062c78f Python`PyEval_EvalFrameEx + 26715
frame #74: 0x0000000100625d3e Python`PyEval_EvalCodeEx + 1617
frame #75: 0x00000001006256e7 Python`PyEval_EvalCode + 48
frame #76: 0x0000000100649068 Python`run_mod + 53
frame #77: 0x000000010064910b Python`PyRun_FileExFlags + 133
frame #78: 0x000000010062203b Python`builtin_execfile + 507
frame #79: 0x000000010062c86a Python`PyEval_EvalFrameEx + 26934
frame #80: 0x0000000100625d3e Python`PyEval_EvalCodeEx + 1617
frame #81: 0x00000001006256e7 Python`PyEval_EvalCode + 48
frame #82: 0x0000000100649068 Python`run_mod + 53
frame #83: 0x0000000100649225 Python`PyRun_StringFlags + 109
frame #84: 0x000000010062632d Python`PyEval_EvalFrameEx + 1017
frame #85: 0x0000000100625d3e Python`PyEval_EvalCodeEx + 1617
frame #86: 0x000000010063045e Python`fast_function + 117
frame #87: 0x000000010062c78f Python`PyEval_EvalFrameEx + 26715
frame #88: 0x00000001006304f1 Python`fast_function + 264
frame #89: 0x000000010062c78f Python`PyEval_EvalFrameEx + 26715
frame #90: 0x00000001006304f1 Python`fast_function + 264
frame #91: 0x000000010062c78f Python`PyEval_EvalFrameEx + 26715
frame #92: 0x0000000100625d3e Python`PyEval_EvalCodeEx + 1617
frame #93: 0x00000001006261f9 Python`PyEval_EvalFrameEx + 709
frame #94: 0x0000000100625d3e Python`PyEval_EvalCodeEx + 1617
frame #95: 0x000000010063045e Python`fast_function + 117
frame #96: 0x000000010062c78f Python`PyEval_EvalFrameEx + 26715
frame #97: 0x0000000100625d3e Python`PyEval_EvalCodeEx + 1617
frame #98: 0x00000001005cac73 Python`function_call + 350
frame #99: 0x00000001005ac921 Python`PyObject_Call + 99
frame #100: 0x000000010065a605 Python`RunModule + 113
frame #101: 0x000000010065a11d Python`Py_Main + 2289
frame #102: 0x00007fff9c032255 libdyld.dylib`start + 1