aboutsummaryrefslogtreecommitdiffstats
path: root/src/qmlmodels/qqmltableinstancemodel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/qmlmodels/qqmltableinstancemodel.cpp')
-rw-r--r--src/qmlmodels/qqmltableinstancemodel.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/qmlmodels/qqmltableinstancemodel.cpp b/src/qmlmodels/qqmltableinstancemodel.cpp
index b6836be349..1c14427b90 100644
--- a/src/qmlmodels/qqmltableinstancemodel.cpp
+++ b/src/qmlmodels/qqmltableinstancemodel.cpp
@@ -165,6 +165,9 @@ QQmlInstanceModel::ReleaseFlags QQmlTableInstanceModel::release(QObject *object,
Q_ASSERT(object);
auto modelItem = qvariant_cast<QQmlDelegateModelItem *>(object->property(kModelItemTag));
Q_ASSERT(modelItem);
+ // Ensure that the object was incubated by this QQmlTableInstanceModel
+ Q_ASSERT(m_modelItems.contains(modelItem->index));
+ Q_ASSERT(m_modelItems[modelItem->index]->object == object);
if (!modelItem->releaseObject())
return QQmlDelegateModel::Referenced;
@@ -214,6 +217,9 @@ void QQmlTableInstanceModel::dispose(QObject *object)
// The item is not referenced by anyone
Q_ASSERT(!modelItem->isObjectReferenced());
Q_ASSERT(!modelItem->isReferenced());
+ // Ensure that the object was incubated by this QQmlTableInstanceModel
+ Q_ASSERT(m_modelItems.contains(modelItem->index));
+ Q_ASSERT(m_modelItems[modelItem->index]->object == object);
m_modelItems.remove(modelItem->index);