[hipc] Fix 'Unexpected result code Success returned' in Reply() (#4215)

* horizon: Add AbortOnFailureUnless()

* hipc: Replace AbortUnless() with AbortOnFailureUnless() in Reply()
This commit is contained in:
TSRBerry 2023-01-07 00:57:21 +01:00 committed by GitHub
parent 38519f3b9a
commit 81fae0d1a6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 3 deletions

View file

@ -100,6 +100,14 @@ namespace Ryujinx.Horizon.Common
}
}
public void AbortOnFailureUnless(Result result, Result result2)
{
if (this != Success && this != result && this != result2)
{
ThrowInvalidResult();
}
}
private void ThrowInvalidResult()
{
throw new InvalidResultException(this);
@ -115,4 +123,4 @@ namespace Ryujinx.Horizon.Common
return PrintableResult;
}
}
}
}

View file

@ -51,7 +51,7 @@ namespace Ryujinx.Horizon.Sdk.Sf.Hipc
{
Result result = ReplyImpl(sessionHandle, messageBuffer);
result.AbortUnless(KernelResult.TimedOut, KernelResult.PortRemoteClosed);
result.AbortOnFailureUnless(KernelResult.TimedOut, KernelResult.PortRemoteClosed);
return Result.Success;
}
@ -86,4 +86,4 @@ namespace Ryujinx.Horizon.Sdk.Sf.Hipc
return result;
}
}
}
}