aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/qqmlvme.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/qml/qml/qqmlvme.cpp')
-rw-r--r--src/qml/qml/qqmlvme.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/qml/qml/qqmlvme.cpp b/src/qml/qml/qqmlvme.cpp
index 24f4a65392..15401e269b 100644
--- a/src/qml/qml/qqmlvme.cpp
+++ b/src/qml/qml/qqmlvme.cpp
@@ -1329,6 +1329,13 @@ void QQmlVMEGuard::guard(QQmlVME *vme)
void QQmlVMEGuard::guard(QQmlObjectCreator *creator)
{
clear();
+
+ QFiniteStack<QObject*> &objects = creator->allCreatedObjects();
+ m_objectCount = objects.count();
+ m_objects = new QPointer<QObject>[m_objectCount];
+ for (int ii = 0; ii < m_objectCount; ++ii)
+ m_objects[ii] = objects[ii];
+
m_contextCount = 1;
m_contexts = new QQmlGuardedContextData[m_contextCount];
m_contexts[0] = creator->parentContextData();