diff options
-rw-r--r-- | engines/kyra/sequences_v2.cpp | 10 | ||||
-rw-r--r-- | engines/kyra/staticres.cpp | 3 |
2 files changed, 8 insertions, 5 deletions
diff --git a/engines/kyra/sequences_v2.cpp b/engines/kyra/sequences_v2.cpp index c06b339e61..f1b3592caf 100644 --- a/engines/kyra/sequences_v2.cpp +++ b/engines/kyra/sequences_v2.cpp @@ -2625,8 +2625,14 @@ void KyraEngine_v2::seq_uninit() { delete [] _seqProcessedString; _seqProcessedString = NULL; - delete [] _sequenceSoundList; - _sequenceSoundList = NULL; + if (_sequenceSoundList) { + for (int i = 0; i < _sequenceSoundListSize; i++) { + if (_sequenceSoundList[i]) + delete _sequenceSoundList[i]; + } + delete [] _sequenceSoundList; + _sequenceSoundList = NULL; + } delete [] _activeWSA; _activeWSA = NULL; diff --git a/engines/kyra/staticres.cpp b/engines/kyra/staticres.cpp index e8a4e8e8e6..817e14fda6 100644 --- a/engines/kyra/staticres.cpp +++ b/engines/kyra/staticres.cpp @@ -945,9 +945,6 @@ void KyraEngine_v2::initStaticResource() { if (_flags.platform == Common::kPlatformPC) len -= 4; - tmpSndLst[i] = new char[len + 1]; - tmpSndLst[i][0] = 0; - if (tlkfiles) { for (int ii = 0; ii < tmpSize; ii++) { if (!scumm_stricmp(&seqSoundList[i][1], &tlkfiles[ii][1])) |