diff options
-rw-r--r-- | kyra/kyra.cpp | 2 | ||||
-rwxr-xr-x | kyra/seqplayer.cpp | 2 | ||||
-rw-r--r-- | kyra/staticres.cpp | 4 |
3 files changed, 4 insertions, 4 deletions
diff --git a/kyra/kyra.cpp b/kyra/kyra.cpp index a4d86656a9..3706f93204 100644 --- a/kyra/kyra.cpp +++ b/kyra/kyra.cpp @@ -2703,7 +2703,7 @@ void KyraEngine::initAnimStateList() { void KyraEngine::initSceneObjectList(int brandonAlive) { debug(9, "KyraEngine::initSceneObjectList(%d)", brandonAlive); - for (int i = 0; i < 31; ++i) { + for (int i = 0; i < 28; ++i) { _animator->actors()[i].active = 0; } diff --git a/kyra/seqplayer.cpp b/kyra/seqplayer.cpp index 3102b4d7d0..618cdcd571 100755 --- a/kyra/seqplayer.cpp +++ b/kyra/seqplayer.cpp @@ -417,7 +417,7 @@ void SeqPlayer::s1_allocTempBuffer() { if (_vm->features() & GF_DEMO) { _seqQuitFlag = true; } else { - if (!_specialBuffer) { + if (!_specialBuffer && !_copyViewOffs) { _specialBuffer = new uint8[40960]; assert(_specialBuffer); int page = _screen->_curPage; diff --git a/kyra/staticres.cpp b/kyra/staticres.cpp index 2b846dcf3b..8a12825b0a 100644 --- a/kyra/staticres.cpp +++ b/kyra/staticres.cpp @@ -257,7 +257,7 @@ void KyraEngine::res_loadResources(int type) { void KyraEngine::res_unloadResources(int type) { debug(9, "res_unloadResources(%d)", type); - if ((type & RES_INTRO) || (type & RES_OUTRO) || type == RES_ALL) { + if ((type & RES_INTRO) || (type & RES_OUTRO) || type & RES_ALL) { res_freeLangTable(&_seq_WSATable, &_seq_WSATable_Size); res_freeLangTable(&_seq_CPSTable, &_seq_CPSTable_Size); res_freeLangTable(&_seq_COLTable, &_seq_COLTable_Size); @@ -278,7 +278,7 @@ void KyraEngine::res_unloadResources(int type) { res_freeLangTable(&_homeString, &_homeString_Size); } - if ((type & RES_INGAME) || type == RES_ALL) { + if ((type & RES_INGAME) || type & RES_ALL) { res_freeLangTable(&_roomFilenameTable, &_roomFilenameTableSize); delete [] _roomTable; _roomTable = 0; |