From bcb9179a8b4128469700af62463674febf2785c6 Mon Sep 17 00:00:00 2001 From: D G Turner Date: Thu, 24 Mar 2011 20:59:20 +0000 Subject: SCI: Close Memory Leak from kAnimate Calls. This was due to a missing destructor in the HunkTable. Thanks to wjp for this patch. --- engines/sci/engine/segment.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'engines/sci/engine') diff --git a/engines/sci/engine/segment.h b/engines/sci/engine/segment.h index ffde01f934..947953e8c3 100644 --- a/engines/sci/engine/segment.h +++ b/engines/sci/engine/segment.h @@ -318,6 +318,12 @@ struct ListTable : public SegmentObjTable { /* HunkTable */ struct HunkTable : public SegmentObjTable { HunkTable() : SegmentObjTable(SEG_TYPE_HUNK) {} + virtual ~HunkTable() { + for (uint i = 0; i < _table.size(); i++) { + if (isValidEntry(i)) + freeEntryContents(i); + } + } void freeEntryContents(int idx) { free(_table[idx].mem); -- cgit v1.2.3