aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/gc.cpp
diff options
context:
space:
mode:
authorMax Horn2010-02-03 01:32:59 +0000
committerMax Horn2010-02-03 01:32:59 +0000
commitbb5e34a014c0ae868de86fcea484bc9671ce18b9 (patch)
tree09bb25253478180fd6069a21789f75fe8104a98c /engines/sci/engine/gc.cpp
parentb2d69649f7e4c484dcf3810e11cd644699b78d2c (diff)
downloadscummvm-rg350-bb5e34a014c0ae868de86fcea484bc9671ce18b9.tar.gz
scummvm-rg350-bb5e34a014c0ae868de86fcea484bc9671ce18b9.tar.bz2
scummvm-rg350-bb5e34a014c0ae868de86fcea484bc9671ce18b9.zip
SCI: Get rid of EngineState::stack_segment
svn-id: r47833
Diffstat (limited to 'engines/sci/engine/gc.cpp')
-rw-r--r--engines/sci/engine/gc.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/engines/sci/engine/gc.cpp b/engines/sci/engine/gc.cpp
index b3fbabdb06..bcc3ba34f6 100644
--- a/engines/sci/engine/gc.cpp
+++ b/engines/sci/engine/gc.cpp
@@ -130,10 +130,11 @@ reg_t_hash_map *find_all_used_references(EngineState *s) {
debugC(2, kDebugLevelGC, "[GC] -- Finished explicitly loaded scripts, done with root set");
// Run Worklist Algorithm
+ SegmentId stack_seg = segMan->findSegmentByType(SEG_TYPE_STACK);
while (!wm._worklist.empty()) {
reg_t reg = wm._worklist.back();
wm._worklist.pop_back();
- if (reg.segment != s->stack_segment) { // No need to repeat this one
+ if (reg.segment != stack_seg) { // No need to repeat this one
debugC(2, kDebugLevelGC, "[GC] Checking %04x:%04x", PRINT_REG(reg));
if (reg.segment < segMan->_heap.size() && segMan->_heap[reg.segment])
segMan->_heap[reg.segment]->listAllOutgoingReferences(reg, &wm, add_outgoing_refs);