From 2585ae9b2c65d1d9c9a01f77aa88492a5ffff5c8 Mon Sep 17 00:00:00 2001 From: Joshua de Reeper Date: Sat, 4 Mar 2023 20:07:13 +1300 Subject: [PATCH] Skylander Portal: Clearing and Reloading fix --- Source/Core/Core/IOS/USB/Emulated/Skylander.cpp | 6 ++++++ .../DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp | 1 - 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/Source/Core/Core/IOS/USB/Emulated/Skylander.cpp b/Source/Core/Core/IOS/USB/Emulated/Skylander.cpp index 7f9fb2203c..2552cfa79b 100644 --- a/Source/Core/Core/IOS/USB/Emulated/Skylander.cpp +++ b/Source/Core/Core/IOS/USB/Emulated/Skylander.cpp @@ -1236,6 +1236,12 @@ bool SkylanderPortal::RemoveSkylander(u8 sky_num) std::lock_guard lock(sky_mutex); auto& skylander = skylanders[sky_num]; + if (skylander.sky_file.IsOpen()) + { + skylander.Save(); + skylander.sky_file.Close(); + } + if (skylander.status & 1) { skylander.status = Skylander::REMOVING; diff --git a/Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp b/Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp index b3e88e428c..107f1ddbe7 100644 --- a/Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp +++ b/Source/Core/DolphinQt/SkylanderPortal/SkylanderPortalWindow.cpp @@ -332,7 +332,6 @@ void SkylanderPortalWindow::ClearSkylander(u8 slot) QMessageBox::Ok); return; } - system.GetSkylanderPortal().RemoveSkylander(slot_infos->portal_slot); m_sky_slots[slot].reset(); UpdateEdits(); }