From 67fa1fb59cea20ffe53b20a9ba6b8ea594199c8a Mon Sep 17 00:00:00 2001 From: Willem Jan Palenstijn Date: Thu, 28 May 2009 22:42:18 +0000 Subject: SCI: Fix potential dangling pointer more robustly, by changing the executionStack implementation to a list. svn-id: r40971 --- engines/sci/engine/gc.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'engines/sci/engine/gc.cpp') diff --git a/engines/sci/engine/gc.cpp b/engines/sci/engine/gc.cpp index 5bc8fc38d7..b5f49fbccf 100644 --- a/engines/sci/engine/gc.cpp +++ b/engines/sci/engine/gc.cpp @@ -97,8 +97,10 @@ reg_t_hash_map *find_all_used_references(EngineState *s) { #endif // Init: Execution Stack - for (i = 0; i < s->_executionStack.size(); i++) { - ExecStack &es = s->_executionStack[i]; + Common::List::iterator iter; + for (iter = s->_executionStack.begin(); + iter != s->_executionStack.end(); ++iter) { + ExecStack &es = *iter; if (es.type != EXEC_STACK_TYPE_KERNEL) { wm.push(es.objp); -- cgit v1.2.3