summaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/scheduler.cpp
diff options
context:
space:
mode:
authorGravatar Fernando Sahmkow2020-03-07 14:16:25 -0400
committerGravatar Fernando Sahmkow2020-06-27 11:35:58 -0400
commit5974e3ea33e12e7abd813704e5b895003ba83555 (patch)
treea72710344f6436cf5bd91eab3424b89188123285 /src/core/hle/kernel/scheduler.cpp
parentGeneral: Move ARM_Interface into Threads. (diff)
downloadyuzu-5974e3ea33e12e7abd813704e5b895003ba83555.tar.gz
yuzu-5974e3ea33e12e7abd813704e5b895003ba83555.tar.xz
yuzu-5974e3ea33e12e7abd813704e5b895003ba83555.zip
Thread: Release the ARM Interface on exitting.
Diffstat (limited to 'src/core/hle/kernel/scheduler.cpp')
-rw-r--r--src/core/hle/kernel/scheduler.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/core/hle/kernel/scheduler.cpp b/src/core/hle/kernel/scheduler.cpp
index a5083ae7c..ce7e1986d 100644
--- a/src/core/hle/kernel/scheduler.cpp
+++ b/src/core/hle/kernel/scheduler.cpp
@@ -724,7 +724,7 @@ void Scheduler::SwitchContext() {
724 previous_thread->SetContinuousOnSVC(false); 724 previous_thread->SetContinuousOnSVC(false);
725 previous_thread->last_running_ticks = system.CoreTiming().GetCPUTicks(); 725 previous_thread->last_running_ticks = system.CoreTiming().GetCPUTicks();
726 previous_thread->SetIsRunning(false); 726 previous_thread->SetIsRunning(false);
727 if (!previous_thread->IsHLEThread()) { 727 if (!previous_thread->IsHLEThread() && !previous_thread->HasExited()) {
728 Core::ARM_Interface& cpu_core = previous_thread->ArmInterface(); 728 Core::ARM_Interface& cpu_core = previous_thread->ArmInterface();
729 cpu_core.SaveContext(previous_thread->GetContext32()); 729 cpu_core.SaveContext(previous_thread->GetContext32());
730 cpu_core.SaveContext(previous_thread->GetContext64()); 730 cpu_core.SaveContext(previous_thread->GetContext64());