summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2018-10-14 20:31:35 +0200
committerGitHub <noreply@github.com>2018-10-14 20:31:35 +0200
commitb183ce43656c25db769f26ac081b8588ef55bd95 (patch)
tree6eff3c5a144552e44da2750a0c04f0b002cd6889
parentMerge pull request #1409 from DarkLordZach/key-derivation (diff)
parentStop all threads on svcBreak (diff)
downloadyuzu-b183ce43656c25db769f26ac081b8588ef55bd95.tar
yuzu-b183ce43656c25db769f26ac081b8588ef55bd95.tar.gz
yuzu-b183ce43656c25db769f26ac081b8588ef55bd95.tar.bz2
yuzu-b183ce43656c25db769f26ac081b8588ef55bd95.tar.lz
yuzu-b183ce43656c25db769f26ac081b8588ef55bd95.tar.xz
yuzu-b183ce43656c25db769f26ac081b8588ef55bd95.tar.zst
yuzu-b183ce43656c25db769f26ac081b8588ef55bd95.zip
-rw-r--r--src/core/hle/kernel/svc.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp
index e406df829..198865fd0 100644
--- a/src/core/hle/kernel/svc.cpp
+++ b/src/core/hle/kernel/svc.cpp
@@ -389,6 +389,12 @@ static void Break(u32 reason, u64 info1, u64 info2) {
"Emulated program broke execution! reason=0x{:016X}, info1=0x{:016X}, info2=0x{:016X}",
reason, info1, info2);
ASSERT(false);
+
+ Core::CurrentProcess()->PrepareForTermination();
+
+ // Kill the current thread
+ GetCurrentThread()->Stop();
+ Core::System::GetInstance().PrepareReschedule();
}
}