aboutsummaryrefslogtreecommitdiffstats
path: root/src/quickvectorimage/qquickvectorimage.cpp
diff options
context:
space:
mode:
authorEskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>2025-12-09 10:44:24 +0100
committerEskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>2025-12-10 08:02:11 +0100
commit67bb01d79e6fb538191bb6b0bd1e85649b7afbd2 (patch)
tree5842bd2d2ab4db2bfdc32643f6e71ef6e1243328 /src/quickvectorimage/qquickvectorimage.cpp
parent72c235843645b523ce9b102f3ca73e0e8bbbc3dc (diff)
VectorImage: Parse contents in separate QML context
The generated QML does not need access to the VectorImage's context, since it is self-contained. Pick-to: 6.10 6.11 Change-Id: I61b12aaf5c3abcfe4c21057a28f46f9d85c2054a Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
Diffstat (limited to 'src/quickvectorimage/qquickvectorimage.cpp')
-rw-r--r--src/quickvectorimage/qquickvectorimage.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/quickvectorimage/qquickvectorimage.cpp b/src/quickvectorimage/qquickvectorimage.cpp
index 9e4e511855..707082101a 100644
--- a/src/quickvectorimage/qquickvectorimage.cpp
+++ b/src/quickvectorimage/qquickvectorimage.cpp
@@ -83,7 +83,10 @@ void QQuickVectorImagePrivate::loadFile()
if (assumeTrustedSource)
flags.setFlag(QQuickVectorImageGenerator::AssumeTrustedSource);
- QQuickItemGenerator generator(localFile, flags, rootItem, qmlContext(q));
+ if (!m_qmlContext || m_qmlContext->engine() != qmlContext(q)->engine())
+ m_qmlContext.reset(new QQmlContext(qmlContext(q)->engine()));
+
+ QQuickItemGenerator generator(localFile, flags, rootItem, m_qmlContext.get());
// If we assume trusted source, we try plugins first
bool generatedWithPlugin = false;