diff options
| author | Ulf Hermann <ulf.hermann@qt.io> | 2025-09-22 08:57:53 +0200 |
|---|---|---|
| committer | Ulf Hermann <ulf.hermann@qt.io> | 2025-09-23 09:43:33 +0200 |
| commit | 044d3d2cdb7ba825069b3d1302b96723cb75d6ca (patch) | |
| tree | 8778ced4a368c202108bbc7307eb10dd760e8907 /src/qmlcompiler/qqmljsoptimizations.cpp | |
| parent | 2ef3de7803b9a35f58dc1355d5d6ad986fff18fc (diff) | |
QmlCompiler: Don't adjust the same conversion multiple times
The same conversion can re-surface in multiple places in the byte code
by virtue of being stored and loaded unchanged. If we've already
adjusted it, we don't need to do it again.
Pick-to: 6.10
Fixes: QTBUG-140415
Change-Id: Ic1e7e90af49f0ee9440a9c37abd4ab8ee0fdbe3e
Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
Diffstat (limited to 'src/qmlcompiler/qqmljsoptimizations.cpp')
| -rw-r--r-- | src/qmlcompiler/qqmljsoptimizations.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/qmlcompiler/qqmljsoptimizations.cpp b/src/qmlcompiler/qqmljsoptimizations.cpp index 2aa84591f9..abceb8ef89 100644 --- a/src/qmlcompiler/qqmljsoptimizations.cpp +++ b/src/qmlcompiler/qqmljsoptimizations.cpp @@ -481,7 +481,7 @@ void QQmlJSOptimizations::adjustTypes() QQmlJSScope::ConstPtr newResult; const auto content = conversion->second.content; - if (content.isConversion()) { + if (content.isConversion() && !content.original().isValid()) { const auto conversionOrigins = content.conversionOrigins(); for (const auto &origin : conversionOrigins) newResult = m_typeResolver->merge(newResult, origin.containedType()); |
