From ee1eecad1a7da013aac32206156a59cb921617a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Sat, 20 Apr 2013 00:46:46 +0200 Subject: [PATCH] SceneGraph: wrong assertion. It is easier to just skip the object than explicitly removing duplicates (or worse, cleaning it more than once). --- src/SceneGraph/Object.hpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/SceneGraph/Object.hpp b/src/SceneGraph/Object.hpp index 8940f51de..746258e7a 100644 --- a/src/SceneGraph/Object.hpp +++ b/src/SceneGraph/Object.hpp @@ -346,7 +346,9 @@ template void Object::setClean(std::vector /* Go through all objects and clean them */ for(std::size_t i = 0; i != objects.size(); ++i) { - CORRADE_INTERNAL_ASSERT(objects[i]->isDirty()); + /* The object might be duplicated in the list, don't clean it more than once */ + if(!objects[i]->isDirty()) continue; + objects[i]->setClean(transformations[i]); CORRADE_ASSERT(!objects[i]->isDirty(), "SceneGraph::Object::setClean(): original implementation was not called", ); }