diff options
Diffstat (limited to 'Ryujinx.HLE/HOS/Kernel/Process/KProcess.cs')
-rw-r--r-- | Ryujinx.HLE/HOS/Kernel/Process/KProcess.cs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/Ryujinx.HLE/HOS/Kernel/Process/KProcess.cs b/Ryujinx.HLE/HOS/Kernel/Process/KProcess.cs index d01c3e3b..4c95821c 100644 --- a/Ryujinx.HLE/HOS/Kernel/Process/KProcess.cs +++ b/Ryujinx.HLE/HOS/Kernel/Process/KProcess.cs @@ -966,6 +966,8 @@ namespace Ryujinx.HLE.HOS.Kernel.Process SignalExitToDebugExited(); SignalExit(); } + + KernelStatic.GetCurrentThread().Exit(); } private void UnpauseAndTerminateAllThreadsExcept(KThread currentThread) @@ -981,7 +983,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Process foreach (KThread thread in _threads) { - if ((thread.SchedFlags & ThreadSchedState.LowMask) != ThreadSchedState.TerminationPending) + if (thread != currentThread && (thread.SchedFlags & ThreadSchedState.LowMask) != ThreadSchedState.TerminationPending) { thread.PrepareForTermination(); } |