From ec0ce96c568b2b610c5218efd7faa5d9a19350f8 Mon Sep 17 00:00:00 2001 From: bunnei Date: Tue, 26 Nov 2019 21:48:56 -0500 Subject: core_timing: Use better reference tracking for EventType. (#3159) * core_timing: Use better reference tracking for EventType. - Moves ownership of the event to the caller, ensuring we don't fire events for destroyed objects. - Removes need for unique names - we won't be using this for save states anyways. --- src/core/memory/cheat_engine.cpp | 2 +- src/core/memory/cheat_engine.h | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'src/core/memory') diff --git a/src/core/memory/cheat_engine.cpp b/src/core/memory/cheat_engine.cpp index 10821d452..b73cc9fbd 100644 --- a/src/core/memory/cheat_engine.cpp +++ b/src/core/memory/cheat_engine.cpp @@ -186,7 +186,7 @@ CheatEngine::~CheatEngine() { } void CheatEngine::Initialize() { - event = core_timing.RegisterEvent( + event = Core::Timing::CreateEvent( "CheatEngine::FrameCallback::" + Common::HexToString(metadata.main_nso_build_id), [this](u64 userdata, s64 cycles_late) { FrameCallback(userdata, cycles_late); }); core_timing.ScheduleEvent(CHEAT_ENGINE_TICKS, event); diff --git a/src/core/memory/cheat_engine.h b/src/core/memory/cheat_engine.h index 0f012e9b5..e3db90dac 100644 --- a/src/core/memory/cheat_engine.h +++ b/src/core/memory/cheat_engine.h @@ -5,6 +5,7 @@ #pragma once #include +#include #include #include "common/common_types.h" #include "core/memory/dmnt_cheat_types.h" @@ -78,7 +79,7 @@ private: std::vector cheats; std::atomic_bool is_pending_reload{false}; - Core::Timing::EventType* event{}; + std::shared_ptr event; Core::Timing::CoreTiming& core_timing; Core::System& system; }; -- cgit v1.2.3