From 39ea49fc3941f2adc8e648f367aaf9fc29b12e5d Mon Sep 17 00:00:00 2001 From: LillyJadeKatrin Date: Fri, 8 Aug 2025 17:09:53 -0400 Subject: [PATCH] Fixed Patch Allowlist Check Previous changes to the patch allowlist format were not reflected in AchievementManager; this corrects that and re-enables patches and codes in hardcore mode. --- Source/Core/Core/AchievementManager.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/Source/Core/Core/AchievementManager.cpp b/Source/Core/Core/AchievementManager.cpp index be971055ff..aa8f0b1321 100644 --- a/Source/Core/Core/AchievementManager.cpp +++ b/Source/Core/Core/AchievementManager.cpp @@ -485,8 +485,16 @@ bool AchievementManager::CheckApprovedCode(const T& code, const std::string& gam for (const std::string& filename : ConfigLoaders::GetGameIniFilenames(game_id, revision)) { auto config = filename.substr(0, filename.length() - 4); - if (m_ini_root->contains(config) && m_ini_root->get(config).contains(hash)) - verified = true; + if (m_ini_root->contains(config)) + { + auto ini_config = m_ini_root->get(config); + if (ini_config.is() && ini_config.contains(code.name)) + { + auto ini_code = ini_config.get(code.name); + if (ini_code.template is()) + verified = (ini_code.template get() == hash); + } + } } if (!verified)