diff --git a/rpcs3/Emu/SysCalls/ModuleManager.cpp b/rpcs3/Emu/SysCalls/ModuleManager.cpp index bf2aa5827a..02183c82e7 100644 --- a/rpcs3/Emu/SysCalls/ModuleManager.cpp +++ b/rpcs3/Emu/SysCalls/ModuleManager.cpp @@ -172,20 +172,22 @@ static const g_module_list[] = void ModuleManager::Init() { - if (!initialized) + if (initialized) { - clear_ppu_functions(); - - for (auto& m : g_module_list) - { - if (m.module) - { - m.module->Init(); - } - } - - initialized = true; + Close(); } + + clear_ppu_functions(); + + for (auto& m : g_module_list) + { + if (m.module) + { + m.module->Init(); + } + } + + initialized = true; } ModuleManager::ModuleManager()