diff options
author | Ulf Hermann <ulf.hermann@qt.io> | 2019-09-30 16:20:19 +0200 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2019-09-30 17:11:52 +0200 |
commit | 224f053eba157fb908f08909d8e2015d76b08295 (patch) | |
tree | 18c8207e3fe03b9dfa5754736be7d3fc51ece468 /src/qml/qml/qqmlscriptblob.cpp | |
parent | cf51a723ffbddc5338628b99fa4a5b5b4d17295c (diff) |
Use a QQmlRefPointer for QQmlScriptData::typeNameCache
The cache can get overwritten. We want the reference to the old one to
be dropped then.
Fixes: QTBUG-78865
Change-Id: I8ebba4ae242c3bf8ae4db5cffc65b26bab265b8a
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/qml/qml/qqmlscriptblob.cpp')
-rw-r--r-- | src/qml/qml/qqmlscriptblob.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/qml/qml/qqmlscriptblob.cpp b/src/qml/qml/qqmlscriptblob.cpp index 69b26894a8..6ac30d3ab5 100644 --- a/src/qml/qml/qqmlscriptblob.cpp +++ b/src/qml/qml/qqmlscriptblob.cpp @@ -177,7 +177,7 @@ void QQmlScriptBlob::done() } if (!m_isModule) { - m_scriptData->typeNameCache = new QQmlTypeNameCache(m_importCache); + m_scriptData->typeNameCache.adopt(new QQmlTypeNameCache(m_importCache)); QSet<QString> ns; @@ -195,7 +195,7 @@ void QQmlScriptBlob::done() m_scriptData->typeNameCache->add(script.qualifier, scriptIndex, script.nameSpace); } - m_importCache.populateCache(m_scriptData->typeNameCache); + m_importCache.populateCache(m_scriptData->typeNameCache.data()); } m_scripts.clear(); } |