diff options
| author | Lilly Jade Katrin <lilly.kitty.1988@gmail.com> | 2026-03-20 21:37:09 -0400 |
|---|---|---|
| committer | Lilly Jade Katrin <lilly.kitty.1988@gmail.com> | 2026-03-20 21:42:05 -0400 |
| commit | 529b696fcbce385beb89aeb47bb479eeb15b558c (patch) | |
| tree | 63b626d3e77e3efde4c29d1c0364615ac21b0c5a | |
| parent | 12935d5b2563e0443210737855f958323575afe5 (diff) | |
Remove AchievementManager ChangeDisc call from Eject
This was causing the achievement runtime to shutdown in the middle
of a disc change even if the resulting disc was valid, which was
causing achievements like the ones in Resident Evil for completing
the entire game in a single session to break midway through.
Also adds a log to notify the user when the disc change is invalid
(e.g. different game inserted).
| -rw-r--r-- | Source/Core/Core/AchievementManager.cpp | 2 | ||||
| -rw-r--r-- | Source/Core/Core/HW/DVD/DVDInterface.cpp | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/Source/Core/Core/AchievementManager.cpp b/Source/Core/Core/AchievementManager.cpp index a88fb463e1..ab9974f2cd 100644 --- a/Source/Core/Core/AchievementManager.cpp +++ b/Source/Core/Core/AchievementManager.cpp @@ -168,6 +168,8 @@ void AchievementManager::LoadGame(const DiscIO::Volume* volume) WARN_LOG_FMT(ACHIEVEMENTS, "Software format unsupported by AchievementManager."); if (rc_client_get_game_info(m_client)) { + OSD::AddMessage("Unsupported media change; disabling achievements.", OSD::Duration::VERY_LONG, + OSD::Color::RED); CloseGame(); } else diff --git a/Source/Core/Core/HW/DVD/DVDInterface.cpp b/Source/Core/Core/HW/DVD/DVDInterface.cpp index 376aeb4add..640023344e 100644 --- a/Source/Core/Core/HW/DVD/DVDInterface.cpp +++ b/Source/Core/Core/HW/DVD/DVDInterface.cpp @@ -442,7 +442,6 @@ void DVDInterface::AutoChangeDiscCallback(Core::System& system, u64 userdata, s6 void DVDInterface::EjectDiscCallback(Core::System& system, u64 userdata, s64 cyclesLate) { - AchievementManager::GetInstance().ChangeDisc(nullptr); system.GetDVDInterface().SetDisc(nullptr, {}); } |
