From 3a7c0911224adc0d0d467dc530f62f97a8868bee Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Wed, 1 Mar 2017 09:31:12 +0100 Subject: DIRECTOR: Plug memory leak --- engines/director/director.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'engines/director/director.cpp') diff --git a/engines/director/director.cpp b/engines/director/director.cpp index a1ee253087..1f0c89780e 100644 --- a/engines/director/director.cpp +++ b/engines/director/director.cpp @@ -59,7 +59,7 @@ DirectorEngine::DirectorEngine(OSystem *syst, const DirectorGameDescription *gam // Load Patterns loadPatterns(); - _sharedCasts = nullptr; + _sharedScore = nullptr; _currentScore = nullptr; _soundManager = nullptr; @@ -67,7 +67,7 @@ DirectorEngine::DirectorEngine(OSystem *syst, const DirectorGameDescription *gam _currentPaletteLength = 0; _lingo = nullptr; - _sharedCasts = nullptr; + _sharedScore = nullptr; _sharedSound = nullptr; _sharedBMP = nullptr; _sharedSTXT = nullptr; @@ -100,6 +100,7 @@ DirectorEngine::~DirectorEngine() { delete _sharedBMP; delete _sharedSTXT; delete _sharedDIB; + delete _sharedScore; delete _currentScore; @@ -242,4 +243,11 @@ Common::HashMap *DirectorEngine::scanMovies(const Commo return nameMap; } +Common::HashMap *DirectorEngine::getSharedCasts() { + if (_sharedScore) + return &_sharedScore->_casts; + + return &_dummyCast; +} + } // End of namespace Director -- cgit v1.2.3