From 9a37c9805fb93ea6ef49b2af28eee80c1d281882 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Wed, 18 Jul 2012 13:00:43 +0200 Subject: WINTERMUTE: Decrement the following tickets when removing an unused ticket. --- engines/wintermute/Base/BRenderSDL.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/engines/wintermute/Base/BRenderSDL.cpp b/engines/wintermute/Base/BRenderSDL.cpp index 8898c97328..8a8a55e2ff 100644 --- a/engines/wintermute/Base/BRenderSDL.cpp +++ b/engines/wintermute/Base/BRenderSDL.cpp @@ -452,6 +452,7 @@ void CBRenderSDL::addDirtyRect(const Common::Rect &rect) { void CBRenderSDL::drawTickets() { RenderQueueIterator it = _renderQueue.begin(); // Clean out the old tickets + int decrement = 0; while (it != _renderQueue.end()) { if ((*it)->_wantsDraw == false || (*it)->_isValid == false) { RenderTicket* ticket = *it; @@ -459,7 +460,9 @@ void CBRenderSDL::drawTickets() { //warning("Discarding Rect: %d %d %d %d Width: %d Height: %d", (*it)->_dstRect.left, (*it)->_dstRect.top, (*it)->_dstRect.right, (*it)->_dstRect.bottom, (*it)->_dstRect.width() , (*it)->_dstRect.height()); it = _renderQueue.erase(it); delete ticket; + decrement++; } else { + (*it)->_drawNum -= decrement; it++; } } -- cgit v1.2.3