From f17d69f23ec6246307a4d9d898511da7e762c61c Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Sun, 24 Mar 2013 18:30:28 +0100 Subject: WINTERMUTE: Fix random crash after save/load. --- engines/wintermute/base/gfx/osystem/base_render_osystem.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'engines/wintermute/base/gfx/osystem') diff --git a/engines/wintermute/base/gfx/osystem/base_render_osystem.cpp b/engines/wintermute/base/gfx/osystem/base_render_osystem.cpp index 061f52776e..13e2b9a5bc 100644 --- a/engines/wintermute/base/gfx/osystem/base_render_osystem.cpp +++ b/engines/wintermute/base/gfx/osystem/base_render_osystem.cpp @@ -172,6 +172,8 @@ bool BaseRenderOSystem::flip() { _dirtyRect = nullptr; g_system->updateScreen(); _needsFlip = false; + _drawNum = 1; + addDirtyRect(_renderRect); return true; } if (!_disableDirtyRects) { @@ -646,6 +648,8 @@ void BaseRenderOSystem::endSaveLoad() { it = _renderQueue.erase(it); delete ticket; } + _lastAddedTicket = _renderQueue.begin(); + _previousTicket = nullptr; // HACK: After a save the buffer will be drawn before the scripts get to update it, // so just skip this single frame. _skipThisFrame = true; -- cgit v1.2.3