summaryrefslogtreecommitdiffstats
path: root/src/render/renderstates/renderstateset.cpp
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2020-11-26 17:33:53 +0100
committerPaul Lemire <paul.lemire@kdab.com>2020-11-26 23:06:41 +0100
commit6df7098d89cf4a2eec35fe1362d354c91eb7a4ef (patch)
tree86155b90f7891831cc65f02f3ae0365081f5755a /src/render/renderstates/renderstateset.cpp
parent934c9f92926709854b6d493a335054913a45f87b (diff)
Only set the state flag after having merged with the other states
Pick-to: 6.0 6.0.0 5.15 Change-Id: Ic7a0a2cccb2b131eec7fca3cf7324109b4d22b6b Reviewed-by: Mike Krus <mike.krus@kdab.com>
Diffstat (limited to 'src/render/renderstates/renderstateset.cpp')
-rw-r--r--src/render/renderstates/renderstateset.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/render/renderstates/renderstateset.cpp b/src/render/renderstates/renderstateset.cpp
index 1d0dce4c8..a49b4e464 100644
--- a/src/render/renderstates/renderstateset.cpp
+++ b/src/render/renderstates/renderstateset.cpp
@@ -104,7 +104,6 @@ StateMaskSet RenderStateSet::stateMask() const
// if we don't already contain a state with that type set
void RenderStateSet::merge(const RenderStateSet *other)
{
- m_stateMask |= other->stateMask();
const std::vector<StateVariant> &otherStates = other->states();
// We only add states which are new (different type)
@@ -113,6 +112,7 @@ void RenderStateSet::merge(const RenderStateSet *other)
if (canAdd)
m_states.push_back(otherState);
}
+ m_stateMask |= other->stateMask();
}
bool RenderStateSet::canAddStateOfType(StateMask type) const