diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-03-31 21:12:41 +0200 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-06-27 17:36:04 +0200 |
commit | c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee (patch) | |
tree | dfd5bbcb4a0d025b7d77537dec23e70c57052717 /src/core/hle/kernel/svc.cpp | |
parent | Bootmanager/CPU_Manager: Correct shader caches and sync GPU on OpenGL. (diff) | |
download | yuzu-c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee.tar yuzu-c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee.tar.gz yuzu-c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee.tar.bz2 yuzu-c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee.tar.lz yuzu-c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee.tar.xz yuzu-c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee.tar.zst yuzu-c8bf47dcfbd43f3e7835d2e45b4704e056d8e9ee.zip |
Diffstat (limited to 'src/core/hle/kernel/svc.cpp')
-rw-r--r-- | src/core/hle/kernel/svc.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp index 37e893c84..dbd35580e 100644 --- a/src/core/hle/kernel/svc.cpp +++ b/src/core/hle/kernel/svc.cpp @@ -622,6 +622,7 @@ static void Break(Core::System& system, u32 reason, u64 info1, u64 info2) { info2, has_dumped_buffer ? std::make_optional(debug_buffer) : std::nullopt); if (!break_reason.signal_debugger) { + SchedulerLock lock(system.Kernel()); LOG_CRITICAL( Debug_Emulated, "Emulated program broke execution! reason=0x{:016X}, info1=0x{:016X}, info2=0x{:016X}", @@ -633,9 +634,8 @@ static void Break(Core::System& system, u32 reason, u64 info1, u64 info2) { const auto thread_processor_id = current_thread->GetProcessorID(); system.ArmInterface(static_cast<std::size_t>(thread_processor_id)).LogBacktrace(); - system.Kernel().CurrentProcess()->PrepareForTermination(); - // Kill the current thread + system.Kernel().ExceptionalExit(); current_thread->Stop(); } } |