Details
-
Bug
-
Resolution: Invalid
-
P1: Critical
-
None
-
5.3.0
-
OSX 10.9 and Win8 X64
Description
There's a crash in QMLIncubator when running the following test-application:
import QtQuick 2.0 ListView { width: 400 height: 400 orientation: ListView.Vertical interactive: false model: foo ? 4 : 2 spacing: 2 delegate: Rectangle { width: parent.width height: 98 color: "red" opacity: 0 Repeater { model: 100 Text { anchors.centerIn: parent text: index Repeater { model: 100 Text { anchors.centerIn: parent text: index } } } } Text { anchors.centerIn: parent text: index } Behavior on opacity { NumberAnimation { } } Component.onCompleted: opacity = 1 } property bool foo: false Component.onCompleted: { while(1) { foo = !foo } } }
That's the callstack when run in qmlscene:
0 libQt5Qml.5.dylib 0x000000010b2f6d72 QV4::MemoryManager::mark() + 610 1 libQt5Qml.5.dylib 0x000000010b2f6a31 QV4::MemoryManager::runGC() + 2513 2 libQt5Qml.5.dylib 0x000000010b2f5e24 QV4::MemoryManager::alloc(unsigned long) + 180 3 libQt5Qml.5.dylib 0x000000010b31f979 QV4::Members::ensureIndex(QV4::ExecutionEngine*, unsigned int) + 89 4 libQt5Qml.5.dylib 0x000000010b321a0a QV4::Object::Object(QV4::InternalClass*) + 58 5 libQt5Qml.5.dylib 0x000000010b315b2f QV4::SimpleScriptFunction::SimpleScriptFunction(QV4::ExecutionContext*, QV4::Function*, bool) + 63 6 libQt5Qml.5.dylib 0x000000010b314389 QV4::FunctionObject::createScriptFunction(QV4::ExecutionContext*, QV4::Function*, bool) + 137 7 libQt5Qml.5.dylib 0x000000010b4083f1 QQmlObjectCreator::setPropertyBinding(QQmlPropertyData*, QV4::CompiledData::Binding const*) + 2833 8 libQt5Qml.5.dylib 0x000000010b405733 QQmlObjectCreator::setupBindings(QBitArray const&) + 1715 9 libQt5Qml.5.dylib 0x000000010b4095c7 QQmlObjectCreator::populateInstance(int, QObject*, QObject*, QQmlPropertyData*, QBitArray const&) + 1367 10 libQt5Qml.5.dylib 0x000000010b40477d QQmlObjectCreator::createInstance(int, QObject*, bool) + 3469 11 libQt5Qml.5.dylib 0x000000010b403897 QQmlObjectCreator::create(int, QObject*, QQmlInstantiationInterrupt*) + 1175 12 libQt5Qml.5.dylib 0x000000010b395dd6 QQmlIncubatorPrivate::incubate(QQmlInstantiationInterrupt&) + 198 13 libQt5Qml.5.dylib 0x000000010b395bc8 QQmlEnginePrivate::incubate(QQmlIncubator&, QQmlContextData*) + 440 14 libQt5Qml.5.dylib 0x000000010b448585 QQmlDelegateModelItem::incubateObject(QQmlComponent*, QQmlEngine*, QQmlContextData*, QQmlContextData*) + 181 15 libQt5Qml.5.dylib 0x000000010b44836c QQmlDelegateModelPrivate::object(QQmlListCompositor::Group, int, bool) + 1244 16 libQt5Qml.5.dylib 0x000000010b4485fa QQmlDelegateModel::object(int, bool) + 90 17 libQt5Quick.5.dylib 0x000000010af19171 QQuickRepeaterPrivate::createItems() + 209 18 libQt5Quick.5.dylib 0x000000010af1901e QQuickRepeater::componentComplete() + 78 19 libQt5Qml.5.dylib 0x000000010b409b26 QQmlObjectCreator::finalize(QQmlInstantiationInterrupt&) + 534 20 libQt5Qml.5.dylib 0x000000010b3961af QQmlIncubatorPrivate::incubate(QQmlInstantiationInterrupt&) + 1183 21 libQt5Qml.5.dylib 0x000000010b395bc8 QQmlEnginePrivate::incubate(QQmlIncubator&, QQmlContextData*) + 440 22 libQt5Qml.5.dylib 0x000000010b448585 QQmlDelegateModelItem::incubateObject(QQmlComponent*, QQmlEngine*, QQmlContextData*, QQmlContextData*) + 181 23 libQt5Qml.5.dylib 0x000000010b44836c QQmlDelegateModelPrivate::object(QQmlListCompositor::Group, int, bool) + 1244 24 libQt5Qml.5.dylib 0x000000010b4485fa QQmlDelegateModel::object(int, bool) + 90 25 libQt5Quick.5.dylib 0x000000010af19171 QQuickRepeaterPrivate::createItems() + 209 26 libQt5Quick.5.dylib 0x000000010af1901e QQuickRepeater::componentComplete() + 78 27 libQt5Qml.5.dylib 0x000000010b409b26 QQmlObjectCreator::finalize(QQmlInstantiationInterrupt&) + 534 28 libQt5Qml.5.dylib 0x000000010b3961af QQmlIncubatorPrivate::incubate(QQmlInstantiationInterrupt&) + 1183 29 libQt5Qml.5.dylib 0x000000010b395bc8 QQmlEnginePrivate::incubate(QQmlIncubator&, QQmlContextData*) + 440 30 libQt5Qml.5.dylib 0x000000010b448585 QQmlDelegateModelItem::incubateObject(QQmlComponent*, QQmlEngine*, QQmlContextData*, QQmlContextData*) + 181 31 libQt5Qml.5.dylib 0x000000010b44836c QQmlDelegateModelPrivate::object(QQmlListCompositor::Group, int, bool) + 1244 32 libQt5Qml.5.dylib 0x000000010b4485fa QQmlDelegateModel::object(int, bool) + 90 33 libQt5Quick.5.dylib 0x000000010af59811 QQuickItemViewPrivate::createItem(int, bool) + 193 34 libQt5Quick.5.dylib 0x000000010af10566 QQuickListViewPrivate::addVisibleItems(double, double, double, double, bool) + 566 35 libQt5Quick.5.dylib 0x000000010af59e1e QQuickItemViewPrivate::refill(double, double) + 238 36 libQt5Quick.5.dylib 0x000000010af53e48 QQuickItemView::setModel(QVariant const&) + 1496 37 libQt5Quick.5.dylib 0x000000010afcbd0b QQuickItemView::qt_metacall(QMetaObject::Call, int, void**) + 219 38 libQt5Quick.5.dylib 0x000000010afbb68c QQuickListView::qt_metacall(QMetaObject::Call, int, void**) + 28 39 libQt5Qml.5.dylib 0x000000010b3745a8 QQmlVMEMetaObject::metaCall(QMetaObject::Call, int, void**) + 568 40 libQt5Qml.5.dylib 0x000000010b38d4d3 QQmlPropertyPrivate::write(QObject*, QQmlPropertyData const&, QVariant const&, QQmlContextData*, QFlags<QQmlPropertyPrivate::WriteFlag>) + 1555 41 libQt5Qml.5.dylib 0x000000010b38cea0 QQmlPropertyPrivate::writeValueProperty(QObject*, QQmlPropertyData const&, QVariant const&, QQmlContextData*, QFlags<QQmlPropertyPrivate::WriteFlag>) + 288 42 libQt5Qml.5.dylib 0x000000010b38fc99 QQmlPropertyPrivate::writeBinding(QObject*, QQmlPropertyData const&, QQmlContextData*, QQmlJavaScriptExpression*, QV4::ValueRef, bool, QFlags<QQmlPropertyPrivate::WriteFlag>) + 3065 43 libQt5Qml.5.dylib 0x000000010b3fb757 QQmlBinding::update(QFlags<QQmlPropertyPrivate::WriteFlag>) + 1367 44 libQt5Qml.5.dylib 0x000000010b3d70ac QQmlNotifier::emitNotify(QQmlNotifierEndpoint*, void**) + 92 45 libQt5Qml.5.dylib 0x000000010b37a483 QQmlData::signalEmitted(QAbstractDeclarativeData*, QObject*, int, void**) + 755 46 libQt5Core.5.dylib 0x000000010c611432 QMetaObject::activate(QObject*, int, int, void**) + 178 47 libQt5Qml.5.dylib 0x000000010b375456 QQmlVMEMetaObject::metaCall(QMetaObject::Call, int, void**) + 4326 48 libQt5Qml.5.dylib 0x000000010b38d4d3 QQmlPropertyPrivate::write(QObject*, QQmlPropertyData const&, QVariant const&, QQmlContextData*, QFlags<QQmlPropertyPrivate::WriteFlag>) + 1555 49 libQt5Qml.5.dylib 0x000000010b3568ed QV4::QObjectWrapper::setProperty(QObject*, QV4::ExecutionContext*, QQmlPropertyData*, QV4::ValueRef) + 2797 50 libQt5Qml.5.dylib 0x000000010b364801 QV4::Runtime::setQmlQObjectProperty(QV4::ExecutionContext*, QV4::ValueRef, int, QV4::ValueRef) + 113 51 ??? 0x000000010f5b5509 0 + 4552611081 52 libQt5Qml.5.dylib 0x000000010b315fa2 QV4::SimpleScriptFunction::call(QV4::Managed*, QV4::CallData*) + 690 53 libQt5Qml.5.dylib 0x000000010b3f354a QQmlJavaScriptExpression::evaluate(QQmlContextData*, QV4::ValueRef, QV4::CallData*, bool*) + 634 54 libQt5Qml.5.dylib 0x000000010b39d172 QQmlBoundSignalExpression::evaluate(void**) + 2050 55 libQt5Qml.5.dylib 0x000000010b39db98 QQmlBoundSignal_callback(QQmlNotifierEndpoint*, void**) + 440 56 libQt5Qml.5.dylib 0x000000010b3d70ac QQmlNotifier::emitNotify(QQmlNotifierEndpoint*, void**) + 92 57 libQt5Qml.5.dylib 0x000000010b37a483 QQmlData::signalEmitted(QAbstractDeclarativeData*, QObject*, int, void**) + 755 58 libQt5Core.5.dylib 0x000000010c611432 QMetaObject::activate(QObject*, int, int, void**) + 178 59 libQt5Qml.5.dylib 0x000000010b409d2d QQmlObjectCreator::finalize(QQmlInstantiationInterrupt&) + 1053 60 libQt5Qml.5.dylib 0x000000010b39368a QQmlComponentPrivate::complete(QQmlEnginePrivate*, QQmlComponentPrivate::ConstructionState*) + 58 61 libQt5Qml.5.dylib 0x000000010b391909 QQmlComponentPrivate::completeCreate() + 41 62 libQt5Qml.5.dylib 0x000000010b393012 QQmlComponent::create(QQmlContext*) + 114 63 qmlscene 0x000000010adc9344 main + 10228 64 qmlscene 0x000000010adc6614 start + 52
Attachments
Issue Links
- relates to
-
QTBUG-39966 Crash/Assert because object that i being created is garbage collected
- Closed
- resulted from
-
QTBUG-38635 QML Crash in garbage collection when creating new Component
- Closed