aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/qqmlobjectcreator.cpp
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@digia.com>2014-03-31 09:58:13 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-03-31 12:03:57 +0200
commit790268130926f318c007b41439c9d60463666e34 (patch)
treead182dcf6fd0eaed4e48b32d1ade176f12a33bf7 /src/qml/qml/qqmlobjectcreator.cpp
parentbd54c80e4b60f922bf29154e8c1131c274a603a8 (diff)
Fix performance regression of parent setting during QML object creation
This showed up in the profiles again: In QML we create a lot of objects with many children and sending a child event each time is expensive. That's why the VME didn't do that and hadn't done so in ages. This patch restores that behavior and aspect of loading performance. Change-Id: I5078fe330d913dc832b284aaecf031152dc80802 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'src/qml/qml/qqmlobjectcreator.cpp')
-rw-r--r--src/qml/qml/qqmlobjectcreator.cpp3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/qml/qml/qqmlobjectcreator.cpp b/src/qml/qml/qqmlobjectcreator.cpp
index e4e0d63b37..9d1f5758a8 100644
--- a/src/qml/qml/qqmlobjectcreator.cpp
+++ b/src/qml/qml/qqmlobjectcreator.cpp
@@ -1073,9 +1073,8 @@ QObject *QQmlObjectCreator::createInstance(int index, QObject *parent, bool isCo
return 0;
}
}
- // ### use no-event variant
if (parent)
- instance->setParent(parent);
+ QQml_setParent_noEvent(instance, parent);
ddata = QQmlData::get(instance, /*create*/true);
ddata->lineNumber = obj->location.line;