diff --git a/Source/Core/Core/ConfigManager.cpp b/Source/Core/Core/ConfigManager.cpp index 47a537e296..2a1cc18604 100644 --- a/Source/Core/Core/ConfigManager.cpp +++ b/Source/Core/Core/ConfigManager.cpp @@ -787,8 +787,7 @@ void SConfig::SetRunningGameMetadata(const std::string& game_id, u64 title_id, u CBoot::LoadMapFromFilename(); HLE::Clear(); HLE::PatchFunctions(); - PatchEngine::Shutdown(); - PatchEngine::LoadPatches(); + PatchEngine::Reload(); HiresTexture::Update(); } } diff --git a/Source/Core/Core/PatchEngine.cpp b/Source/Core/Core/PatchEngine.cpp index b2d9b17566..87c60e1f11 100644 --- a/Source/Core/Core/PatchEngine.cpp +++ b/Source/Core/Core/PatchEngine.cpp @@ -246,4 +246,10 @@ void Shutdown() Gecko::Shutdown(); } +void Reload() +{ + Shutdown(); + LoadPatches(); +} + } // namespace diff --git a/Source/Core/Core/PatchEngine.h b/Source/Core/Core/PatchEngine.h index 2d70bf4cf8..b1e7b2ba02 100644 --- a/Source/Core/Core/PatchEngine.h +++ b/Source/Core/Core/PatchEngine.h @@ -45,6 +45,7 @@ void LoadPatchSection(const std::string& section, std::vector& patches, I void LoadPatches(); bool ApplyFramePatches(); void Shutdown(); +void Reload(); inline int GetPatchTypeCharLength(PatchType type) {