summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Yuri Kunde Schlesner2017-02-11 03:29:46 -0800
committerGravatar GitHub2017-02-11 03:29:46 -0800
commitda6a40e3d1beaf17847b973d0389a2d9ab66aa9b (patch)
treedcd6022b0ff356f91659b3947020551c6f919127 /src
parenthid: remove the touch field from PadState (#2557) (diff)
downloadyuzu-da6a40e3d1beaf17847b973d0389a2d9ab66aa9b.tar.gz
yuzu-da6a40e3d1beaf17847b973d0389a2d9ab66aa9b.tar.xz
yuzu-da6a40e3d1beaf17847b973d0389a2d9ab66aa9b.zip
core: Free AppLoader on shutdown to release file (#2558)
Fixes #2455
Diffstat (limited to 'src')
-rw-r--r--src/core/core.cpp11
1 files changed, 2 insertions, 9 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp
index 202cd332b..c9c9b7615 100644
--- a/src/core/core.cpp
+++ b/src/core/core.cpp
@@ -67,10 +67,6 @@ System::ResultStatus System::SingleStep() {
67} 67}
68 68
69System::ResultStatus System::Load(EmuWindow* emu_window, const std::string& filepath) { 69System::ResultStatus System::Load(EmuWindow* emu_window, const std::string& filepath) {
70 if (app_loader) {
71 app_loader.reset();
72 }
73
74 app_loader = Loader::GetLoader(filepath); 70 app_loader = Loader::GetLoader(filepath);
75 71
76 if (!app_loader) { 72 if (!app_loader) {
@@ -123,10 +119,6 @@ void System::Reschedule() {
123} 119}
124 120
125System::ResultStatus System::Init(EmuWindow* emu_window, u32 system_mode) { 121System::ResultStatus System::Init(EmuWindow* emu_window, u32 system_mode) {
126 if (cpu_core) {
127 cpu_core.reset();
128 }
129
130 Memory::Init(); 122 Memory::Init();
131 123
132 if (Settings::values.use_cpu_jit) { 124 if (Settings::values.use_cpu_jit) {
@@ -159,7 +151,8 @@ void System::Shutdown() {
159 Kernel::Shutdown(); 151 Kernel::Shutdown();
160 HW::Shutdown(); 152 HW::Shutdown();
161 CoreTiming::Shutdown(); 153 CoreTiming::Shutdown();
162 cpu_core.reset(); 154 cpu_core = nullptr;
155 app_loader = nullptr;
163 156
164 LOG_DEBUG(Core, "Shutdown OK"); 157 LOG_DEBUG(Core, "Shutdown OK");
165} 158}