diff options
| author | Thomas Guillemard <thog@protonmail.com> | 2018-10-08 20:53:08 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-10-08 20:53:08 +0200 |
| commit | 65c67bb4a5d19d81048fd84c3ec599ff531629fd (patch) | |
| tree | d84c804fc57ea3fcbc4bb929782f1338008d3df8 /Ryujinx.HLE/HOS/Kernel | |
| parent | 74ca82c5346e341b34909fcf0d2911c6bc9d33c1 (diff) | |
Break: don't crash when bit 31 is set (#444)
Diffstat (limited to 'Ryujinx.HLE/HOS/Kernel')
| -rw-r--r-- | Ryujinx.HLE/HOS/Kernel/SvcSystem.cs | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/Ryujinx.HLE/HOS/Kernel/SvcSystem.cs b/Ryujinx.HLE/HOS/Kernel/SvcSystem.cs index 8bcea550..396519fb 100644 --- a/Ryujinx.HLE/HOS/Kernel/SvcSystem.cs +++ b/Ryujinx.HLE/HOS/Kernel/SvcSystem.cs @@ -247,9 +247,17 @@ namespace Ryujinx.HLE.HOS.Kernel long Unknown = (long)ThreadState.X1; long Info = (long)ThreadState.X2; - Process.PrintStackTrace(ThreadState); + if ((Reason & (1 << 31)) == 0) + { + Process.PrintStackTrace(ThreadState); - throw new GuestBrokeExecutionException(); + throw new GuestBrokeExecutionException(); + } + else + { + Device.Log.PrintInfo(LogClass.KernelSvc, "Debugger triggered"); + Process.PrintStackTrace(ThreadState); + } } private void SvcOutputDebugString(AThreadState ThreadState) |
