diff options
-rw-r--r-- | engines/mortevielle/mortevielle.cpp | 2 | ||||
-rw-r--r-- | engines/mortevielle/mortevielle.h | 3 | ||||
-rw-r--r-- | engines/mortevielle/utils.cpp | 4 |
3 files changed, 7 insertions, 2 deletions
diff --git a/engines/mortevielle/mortevielle.cpp b/engines/mortevielle/mortevielle.cpp index f98832f984..7e73d116dd 100644 --- a/engines/mortevielle/mortevielle.cpp +++ b/engines/mortevielle/mortevielle.cpp @@ -102,10 +102,12 @@ MortevielleEngine::MortevielleEngine(OSystem *system, const ADGameDescription *g memset(_mem, 0, sizeof(_mem)); _curPict = nullptr; + _rightFramePict = nullptr; } MortevielleEngine::~MortevielleEngine() { free(_curPict); + free(_rightFramePict); } /** diff --git a/engines/mortevielle/mortevielle.h b/engines/mortevielle/mortevielle.h index ae35b20554..dbd0449d9a 100644 --- a/engines/mortevielle/mortevielle.h +++ b/engines/mortevielle/mortevielle.h @@ -476,7 +476,8 @@ public: // TODO: Replace the following with proper implementations, or refactor out the code using them byte _mem[65536 * 16]; byte *_curPict; - byte _rightFramePict[1664]; + byte *_rightFramePict; + Debugger _debugger; ScreenSurface _screenSurface; PaletteManager _paletteManager; diff --git a/engines/mortevielle/utils.cpp b/engines/mortevielle/utils.cpp index 36b2d613ca..f82f6f7837 100644 --- a/engines/mortevielle/utils.cpp +++ b/engines/mortevielle/utils.cpp @@ -2570,7 +2570,9 @@ void MortevielleEngine::adzon() { if (!f.open("dec.mor")) error("Missing file - dec.mor"); - f.read(_rightFramePict, 1664); + free(_rightFramePict); + _rightFramePict = (byte *)malloc(sizeof(byte) * f.size()); + f.read(_rightFramePict, f.size()); f.close(); } |