aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/compiler/qqmlcodegenerator.cpp
diff options
context:
space:
mode:
authorLiang Jian <jianliang79@gmail.com>2014-03-13 20:30:04 +0800
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-03-13 16:39:34 +0100
commitef635d410dada5c8eaa963d127ccb53eae3194fb (patch)
tree5828f2b3a8cae8cbf27c1e7343779d3f84133864 /src/qml/compiler/qqmlcodegenerator.cpp
parentd3bc2557e3a4dae686a80356d3d385f6b80924b6 (diff)
Fix QQmlTypeData object leak
1) unref QQmlTypeData object stored in m_compositeSingletons 2) unref QQmlTypeData object in resolveQmlType() Change-Id: I5f2e3a542637f62509c4a2f2ed8a6ba080eacf1b Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/compiler/qqmlcodegenerator.cpp')
-rw-r--r--src/qml/compiler/qqmlcodegenerator.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/qml/compiler/qqmlcodegenerator.cpp b/src/qml/compiler/qqmlcodegenerator.cpp
index 971d85e0ea..45373c6d11 100644
--- a/src/qml/compiler/qqmlcodegenerator.cpp
+++ b/src/qml/compiler/qqmlcodegenerator.cpp
@@ -1526,6 +1526,7 @@ static IR::Type resolveQmlType(QQmlEnginePrivate *qmlEngine, IR::MemberExpressio
Q_ASSERT(tdata);
Q_ASSERT(tdata->isComplete());
initMetaObjectResolver(resolver, qmlEngine->propertyCacheForType(tdata->compiledData()->metaTypeId));
+ tdata->release();
resolver->flags |= AllPropertiesAreFinal;
return resolver->resolveMember(qmlEngine, resolver, member);
} else if (const QMetaObject *attachedMeta = type->attachedPropertiesType()) {