From 2f1c7f779a1facc88188d399574d4aeb8cf6dea5 Mon Sep 17 00:00:00 2001 From: Willem Jan Palenstijn Date: Thu, 8 Oct 2009 21:32:04 +0000 Subject: SCI: Don't iterate past end of list svn-id: r44804 --- engines/sci/gui/gui_windowmgr.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/engines/sci/gui/gui_windowmgr.cpp b/engines/sci/gui/gui_windowmgr.cpp index 5f466c3c13..1f445bdd02 100644 --- a/engines/sci/gui/gui_windowmgr.cpp +++ b/engines/sci/gui/gui_windowmgr.cpp @@ -91,8 +91,11 @@ void SciGuiWindowMgr::EndUpdate(GuiWindow *wnd) { GuiPort *oldPort = _gfx->SetPort(_wmgrPort); const PortList::iterator end = _windowList.end(); PortList::iterator it = Common::find(_windowList.begin(), end, wnd); - while (it != end) { - ++it; + + // wnd has to be in _windowList + assert(it != end); + + while (++it != end) { // FIXME: We also store GuiPort objects in the window list. // We should add a check that we really only pass windows here... UpdateWindow((GuiWindow *)*it); -- cgit v1.2.3