From a311ff4cf1ab6aaafba82f13f04e59ddbc9da055 Mon Sep 17 00:00:00 2001 From: Lynix Date: Sat, 3 Sep 2016 21:13:00 +0200 Subject: [PATCH] Graphics/DeferredRenderQueue: Fix crash on layer removal Former-commit-id: 87fdfb051158d241754eb6f1f811d12e88811a47 [formerly c5ae03d7168851330dd2c087c515c7d30ad863c7] [formerly 0f5debff94e6a37dde830975fd219daf82382d9d [formerly 42297b9b5af5b42e4c12146d930b6641425de8f4]] Former-commit-id: b93ecd34f72724806ea06c6d335a41c7dd1afacb [formerly ad14d199f3ee381221df118b4af2cd647ab8fc24] Former-commit-id: 805f20df11668bf73d35065e23c4912800850427 --- src/Nazara/Graphics/DeferredRenderQueue.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Nazara/Graphics/DeferredRenderQueue.cpp b/src/Nazara/Graphics/DeferredRenderQueue.cpp index 41fb9d20b..b240edcd7 100644 --- a/src/Nazara/Graphics/DeferredRenderQueue.cpp +++ b/src/Nazara/Graphics/DeferredRenderQueue.cpp @@ -273,7 +273,7 @@ namespace Nz layers.clear(); else { - for (auto it = layers.begin(); it != layers.end(); ++it) + for (auto it = layers.begin(); it != layers.end();) { Layer& layer = it->second; if (layer.clearCount++ >= 100) @@ -307,6 +307,8 @@ namespace Nz pipelineEntry.maxInstanceCount = 0; } } + + ++it; } } }