mirror of
https://git.ryujinx.app/ryubing/ryujinx.git
synced 2026-06-03 10:59:14 +00:00
Compare commits
5 Commits
Canary-1.3
...
01220db18c
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
01220db18c | ||
|
|
ecd1c1240c | ||
|
|
55c2ae2b3d | ||
|
|
b51999a1ba | ||
|
|
bfc0d62732 |
2
.github/workflows/canary.yml
vendored
2
.github/workflows/canary.yml
vendored
@@ -50,7 +50,7 @@ jobs:
|
||||
- name: Install gli
|
||||
run: |
|
||||
mkdir -p $HOME/.bin
|
||||
gh release download -R GreemDev/GLI -O gli -p 'gli-linux-x64' 2.0.30
|
||||
gh release download -R GreemDev/GLI -O gli -p 'gli-linux-x64' 2.0.31
|
||||
chmod +x gli
|
||||
mv gli $HOME/.bin/
|
||||
echo "$HOME/.bin" >> $GITHUB_PATH
|
||||
|
||||
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
@@ -44,7 +44,7 @@ jobs:
|
||||
- name: Install gli
|
||||
run: |
|
||||
mkdir -p $HOME/.bin
|
||||
gh release download -R GreemDev/GLI -O gli -p 'gli-linux-x64' 2.0.30
|
||||
gh release download -R GreemDev/GLI -O gli -p 'gli-linux-x64' 2.0.31
|
||||
chmod +x gli
|
||||
mv gli $HOME/.bin/
|
||||
echo "$HOME/.bin" >> $GITHUB_PATH
|
||||
|
||||
@@ -570,6 +570,11 @@ namespace Ryujinx.HLE.HOS
|
||||
}
|
||||
}
|
||||
|
||||
public string DebugGetApplicationProcessMinidump()
|
||||
{
|
||||
return DebugGetApplicationProcess()?.Debugger?.GetMinidump();
|
||||
}
|
||||
|
||||
internal KProcess DebugGetApplicationProcess()
|
||||
{
|
||||
lock (KernelContext.Processes)
|
||||
|
||||
@@ -386,6 +386,30 @@ namespace Ryujinx.Ava
|
||||
exceptions.Add(initialException);
|
||||
}
|
||||
|
||||
if (isTerminating && HLE.Switch.Shared is { } device)
|
||||
{
|
||||
try
|
||||
{
|
||||
// Print a short message first just in case it crashes again during minidump creation (should not happen)
|
||||
Logger.Error?.Print(LogClass.Application, $"Unhandled exception caught: {initialException.GetType().Name}. Creating guest program minidump...");
|
||||
|
||||
var minidump = device.System?.DebugGetApplicationProcessMinidump();
|
||||
|
||||
if (minidump == null)
|
||||
{
|
||||
Logger.Warning?.Print(LogClass.Application, "Failed to create minidump");
|
||||
}
|
||||
else
|
||||
{
|
||||
Logger.Info?.Print(LogClass.Application, minidump);
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Logger.Error?.Print(LogClass.Application, $"Failed to create minidump: {e.Message}");
|
||||
}
|
||||
}
|
||||
|
||||
foreach (Exception e in exceptions)
|
||||
{
|
||||
string message = $"Unhandled exception caught: {e}";
|
||||
|
||||
Reference in New Issue
Block a user