Browse Source

core: Initialize cheats after load to avoid VMManager crash

This used to occur due to the VMManager being nullptr at the time cheats were registered (during load, but before it was done). This is bypassed by not accessing the VMManager for offset data until load is complete,
Zach Hilman 7 years ago
parent
commit
3e729c13cc
1 changed files with 5 additions and 0 deletions
  1. 5 0
      src/core/core.cpp

+ 5 - 0
src/core/core.cpp

@@ -205,6 +205,11 @@ struct System::Impl {
         gpu_core->Start();
         cpu_core_manager.StartThreads();
 
+        // Initialize cheat engine
+        if (cheat_engine) {
+            cheat_engine->Initialize();
+        }
+
         // All threads are started, begin main process execution, now that we're in the clear.
         main_process->Run(load_parameters->main_thread_priority,
                           load_parameters->main_thread_stack_size);