From f1f65b5000ed91098421aeff4cdb7b8a90b0482b Mon Sep 17 00:00:00 2001 From: Christian Semmler Date: Sat, 20 Apr 2024 12:39:24 -0400 Subject: [PATCH] Implement/match LegoAnimMMPresenter::~LegoAnimMMPresenter --- LEGO1/lego/legoomni/include/legoanimmmpresenter.h | 1 + .../lego/legoomni/src/common/legoanimmmpresenter.cpp | 12 ++++++++++++ 2 files changed, 13 insertions(+) diff --git a/LEGO1/lego/legoomni/include/legoanimmmpresenter.h b/LEGO1/lego/legoomni/include/legoanimmmpresenter.h index aeeed0a2..96d0915d 100644 --- a/LEGO1/lego/legoomni/include/legoanimmmpresenter.h +++ b/LEGO1/lego/legoomni/include/legoanimmmpresenter.h @@ -25,6 +25,7 @@ class LegoAnimMMPresenter : public MxCompositePresenter { }; LegoAnimMMPresenter(); + ~LegoAnimMMPresenter(); MxLong Notify(MxParam& p_param) override; // vtable+0x04 diff --git a/LEGO1/lego/legoomni/src/common/legoanimmmpresenter.cpp b/LEGO1/lego/legoomni/src/common/legoanimmmpresenter.cpp index 0e027bef..f23a7424 100644 --- a/LEGO1/lego/legoomni/src/common/legoanimmmpresenter.cpp +++ b/LEGO1/lego/legoomni/src/common/legoanimmmpresenter.cpp @@ -34,6 +34,18 @@ LegoAnimMMPresenter::LegoAnimMMPresenter() m_unk0x58 = e_unk0; } +// FUNCTION: LEGO1 0x1004aa60 +LegoAnimMMPresenter::~LegoAnimMMPresenter() +{ + if (VideoManager() != NULL) { + VideoManager()->UnregisterPresenter(*this); + } + + delete m_unk0x68; + + NotificationManager()->Unregister(this); +} + // FUNCTION: LEGO1 0x1004aaf0 MxResult LegoAnimMMPresenter::StartAction(MxStreamController* p_controller, MxDSAction* p_action) {