From 0876677fb22b29f0ab02995c01147c907235e3b2 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Wed, 29 Jun 2016 16:07:39 +0100 Subject: [PATCH] Removed check against changed flag as check is aleady done outside the method so no need for a duplicate check --- src/osg/State.cpp | 29 +++++++++++------------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/src/osg/State.cpp b/src/osg/State.cpp index f8dc4d8a6..e91af6adb 100644 --- a/src/osg/State.cpp +++ b/src/osg/State.cpp @@ -1826,30 +1826,23 @@ void State::frameCompleted() bool State::DefineMap::updateCurrentDefines() { - if (changed) + currentDefines.clear(); + for(DefineStackMap::const_iterator itr = map.begin(); + itr != map.end(); + ++itr) { - currentDefines.clear(); - for(DefineStackMap::const_iterator itr = map.begin(); - itr != map.end(); - ++itr) + const DefineStack::DefineVec& dv = itr->second.defineVec; + if (!dv.empty()) { - const DefineStack::DefineVec& dv = itr->second.defineVec; - if (!dv.empty()) + const StateSet::DefinePair& dp = dv.back(); + if (dp.second & osg::StateAttribute::ON) { - const StateSet::DefinePair& dp = dv.back(); - if (dp.second & osg::StateAttribute::ON) - { - currentDefines[itr->first] = dp; - } + currentDefines[itr->first] = dp; } } - changed = false; - return true; - } - else - { - return false; } + changed = false; + return true; } std::string State::getDefineString(const osg::ShaderDefines& shaderDefines)