aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/kyra/lol.cpp5
-rw-r--r--engines/kyra/saveload_lok.cpp2
2 files changed, 6 insertions, 1 deletions
diff --git a/engines/kyra/lol.cpp b/engines/kyra/lol.cpp
index c56357ea1f..d1fe6338c0 100644
--- a/engines/kyra/lol.cpp
+++ b/engines/kyra/lol.cpp
@@ -400,6 +400,9 @@ LoLEngine::~LoLEngine() {
delete[] _defaultLegendData;
delete[] _mapCursorOverlay;
delete[] _mapOverlay;
+
+ for (Common::Array<const SpellProc*>::iterator i = _spellProcs.begin(); i != _spellProcs.end(); ++i)
+ delete *i;
_spellProcs.clear();
}
@@ -544,6 +547,8 @@ Common::Error LoLEngine::go() {
if (!_flags.isDemo && !_res->loadFileList("FILEDATA.FDT"))
error("Couldn't load file list: 'FILEDATA.FDT'");
+ // Usually fonts etc. would be setup by the prologue code, if we skip
+ // the prologue code we need to setup them manually here.
if (_gameToLoad != -1)
preInit();
diff --git a/engines/kyra/saveload_lok.cpp b/engines/kyra/saveload_lok.cpp
index d5ff36480c..0f561dace0 100644
--- a/engines/kyra/saveload_lok.cpp
+++ b/engines/kyra/saveload_lok.cpp
@@ -162,7 +162,7 @@ Common::Error KyraEngine_LoK::loadGameState(int slot) {
// In the first version when this entry was introduced,
// it wasn't made sure that _curSfxFile was initialized
// so if it's out of bounds we just set it to 0.
- if (_flags.platform == Common::kPlatformFMTowns || _flags.platform == Common::kPlatformPC98) {
+ if (_flags.platform == Common::kPlatformFMTowns) {
if (_curSfxFile >= _soundData->fileListLen || _curSfxFile < 0)
_curSfxFile = 0;
_sound->loadSoundFile(_curSfxFile);