Details
-
Bug
-
Resolution: Invalid
-
P1: Critical
-
None
-
5.9.1
-
None
-
Linux pc 4.12.2-1-ARCH #1 SMP PREEMPT Sat Jul 15 20:18:04 UTC 2017 x86_64 GNU/Linux
Description
Testcase:
import QtQuick 2.3 Item { Component { id: component Item { property ListModel entries: ListModel {} property bool show: false Item { //onTestChanged: console.log(test) // Uncommenting this magically unbreaks things property var test: show ? entries.get(0) : {} property string foo: test.d || '' } Component.onCompleted: { entries.append({"a":{"b":"c"},"d":"e"}) show = true } } } Loader { active: true id: loader sourceComponent: component } Timer { interval: 100 running: true onTriggered: loader.active = false } }
Uncommenting the `console.log` statement magically removes the segfault.
Backtrace (partial, I don't have a debug build):
#2 0x00007f5ddf94f615 in QQmlOpenMetaObject::~QQmlOpenMetaObject() () from /usr/lib/libQt5Qml.so.5
#4 0x00007f5dde31de6a in QObjectPrivate::~QObjectPrivate() () from /usr/lib/libQt5Core.so.5
#5 0x00007f5dde31deea in QObjectPrivate::~QObjectPrivate() () from /usr/lib/libQt5Core.so.5
#6 0x00007f5dde325f56 in QObject::~QObject() () from /usr/lib/libQt5Core.so.5
#7 0x00007f5dde3262fa in QObject::~QObject() () from /usr/lib/libQt5Core.so.5
#11 0x00007f5ddfa31739 in QQmlListModel::~QQmlListModel() () from /usr/lib/libQt5Qml.so.5
#13 0x00007f5dde31c2cd in QObjectPrivate::deleteChildren() () from /usr/lib/libQt5Core.so.5
#14 0x00007f5dde325f0c in QObject::~QObject() () from /usr/lib/libQt5Core.so.5
#15 0x00007f5ddff03e95 in QQuickItem::~QQuickItem() () from /usr/lib/libQt5Quick.so.5
#17 0x00007f5dde31f1f1 in QObject::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#18 0x00007f5ddff0137b in QQuickItem::event(QEvent*) () from /usr/lib/libQt5Quick.so.5
#19 0x00007f5ddf015e4c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#20 0x00007f5ddf01d926 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#21 0x00007f5dde2eebd0 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#22 0x00007f5dde2f1426 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQt5Core.so.5
#24 0x00007f5ddb0f2a57 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#26 0x00007f5ddb0f2d1c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#27 0x00007f5dde349061 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#28 0x00007f5dde2ecffb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#29 0x00007f5dde2f6048 in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5