aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE
diff options
context:
space:
mode:
authorAc_K <Acoustik666@gmail.com>2021-02-19 20:18:13 +0100
committerGitHub <noreply@github.com>2021-02-19 20:18:13 +0100
commitb93fe5979a290097b3bd4cf7810e774a7e2ee834 (patch)
tree243995d21246063aae101549bdab5d8499a5643b /Ryujinx.HLE
parentc6d3c4207aa94c3ccc0e28d0d8361f579d9f6b0e (diff)
nifm: Fix returned buffer size of GetClientId (#2036)
This PR fix an issue introduced on last IPC rewrite PRs where some returned buffer size have to be explicit now. `GetClientId` without an explicit buffer size return some garbage to the guest and then `nifm` service crashes because of a wrong ClientId. It's fixed now. Horizon Chase Turbo and Doom regression are fixed now. (Probably some other games too)
Diffstat (limited to 'Ryujinx.HLE')
-rw-r--r--Ryujinx.HLE/HOS/Services/Nifm/StaticService/IGeneralService.cs3
1 files changed, 2 insertions, 1 deletions
diff --git a/Ryujinx.HLE/HOS/Services/Nifm/StaticService/IGeneralService.cs b/Ryujinx.HLE/HOS/Services/Nifm/StaticService/IGeneralService.cs
index 1b170f4b..944186d3 100644
--- a/Ryujinx.HLE/HOS/Services/Nifm/StaticService/IGeneralService.cs
+++ b/Ryujinx.HLE/HOS/Services/Nifm/StaticService/IGeneralService.cs
@@ -27,7 +27,8 @@ namespace Ryujinx.HLE.HOS.Services.Nifm.StaticService
public ResultCode GetClientId(ServiceCtx context)
{
long position = context.Request.RecvListBuff[0].Position;
- long size = context.Request.RecvListBuff[0].Size;
+
+ context.Response.PtrBuff[0] = context.Response.PtrBuff[0].WithSize(4);
context.Memory.Write((ulong)position, _generalServiceDetail.ClientId);