diff options
-rw-r--r-- | engines/agi/agi.cpp | 7 | ||||
-rw-r--r-- | engines/agi/view.h | 3 |
2 files changed, 6 insertions, 4 deletions
diff --git a/engines/agi/agi.cpp b/engines/agi/agi.cpp index 3f98a1d4be..c18e9ac0b7 100644 --- a/engines/agi/agi.cpp +++ b/engines/agi/agi.cpp @@ -102,10 +102,11 @@ int AgiEngine::agiInit() { } // clear view table - for (i = 0; i < SCREENOBJECTS_MAX; i++) - memset(&_game.screenObjTable[i], 0, sizeof(struct ScreenObjEntry)); + for (i = 0; i < SCREENOBJECTS_MAX; i++) { + _game.screenObjTable[i].reset(); + } - memset(&_game.addToPicView, 0, sizeof(struct ScreenObjEntry)); + _game.addToPicView.reset(); _words->clearEgoWords(); diff --git a/engines/agi/view.h b/engines/agi/view.h index adcf7dd1b3..1c57d5d468 100644 --- a/engines/agi/view.h +++ b/engines/agi/view.h @@ -133,7 +133,8 @@ struct ScreenObjEntry { // end of motion related variables uint8 loop_flag; - ScreenObjEntry() { memset(this, 0, sizeof(ScreenObjEntry)); } + void reset() { memset(this, 0, sizeof(ScreenObjEntry)); } + ScreenObjEntry() { reset(); } }; // struct vt_entry } // End of namespace Agi |