diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2021-07-29 12:45:16 +0200 |
---|---|---|
committer | Paul Lemire <paul.lemire@kdab.com> | 2021-07-29 14:24:52 +0200 |
commit | 21168905a7eda8806543b490a0fae5a5a0ec7cad (patch) | |
tree | 52e7f99a49f41ae2f0c12aa41e6669cfaeaea88c /src | |
parent | dfed3541b736d52ed3693835be4b2ce86fbc1d52 (diff) |
Fix for QShaderNode fix that selected highest version number of a rule
The rule selection still has to be made from last added rule to first
so that format.support works correctly.
- Update QShaderNode unit tests
Pick-to: 6.2 6.1 5.15
Change-Id: I47af898ee0d82e91009efccf1dca9937feaca717
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/render/shadergraph/qshadernode.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/render/shadergraph/qshadernode.cpp b/src/render/shadergraph/qshadernode.cpp index b95a77b04..b06b9c84e 100644 --- a/src/render/shadergraph/qshadernode.cpp +++ b/src/render/shadergraph/qshadernode.cpp @@ -153,7 +153,8 @@ QList<QShaderFormat> QShaderNode::availableFormats() const QShaderNode::Rule QShaderNode::rule(const QShaderFormat &format) const { const QPair<QShaderFormat, Rule> *selected = nullptr; - for (const auto &entry : qAsConst(m_rules)) { + for (auto it = m_rules.crbegin(); it != m_rules.crend(); ++it) { + const auto &entry = *it; if (format.supports(entry.first)) { if (!selected || entry.first.version() > selected->first.version()) selected = &entry; |