From bf1ff93e45d79d00eb8fb6dcdbf65765fee40ddf Mon Sep 17 00:00:00 2001 From: Michael Scire Date: Wed, 2 Dec 2020 08:18:45 -0800 Subject: [PATCH] sm: fix abi for DetachClient --- nx/source/services/sm.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/nx/source/services/sm.c b/nx/source/services/sm.c index 2ed08c76..b0ca8788 100644 --- a/nx/source/services/sm.c +++ b/nx/source/services/sm.c @@ -36,6 +36,11 @@ Handle smGetServiceOverride(SmServiceName name) { NX_GENERATE_SERVICE_GUARD(sm); +static Result _smCmdInPid(u32 cmd_id) { + u64 pid_placeholder = 0; + return serviceDispatchIn(&g_smSrv, cmd_id, pid_placeholder, .in_send_pid = true); +} + Result _smInitialize(void) { Handle sm_handle; Result rc = svcConnectToNamedPort(&sm_handle, "sm:"); @@ -50,8 +55,7 @@ Result _smInitialize(void) { Handle tmp; if (R_SUCCEEDED(rc) && R_VALUE(smGetServiceOriginal(&tmp, (SmServiceName){})) == 0x415) { - u64 pid_placeholder = 0; - rc = serviceDispatchIn(&g_smSrv, 0, pid_placeholder, .in_send_pid = true); + rc = _smCmdInPid(0); } return rc; @@ -109,5 +113,5 @@ Result smUnregisterService(SmServiceName name) { Result smDetachClient(void) { if (hosversionBefore(11,0,0)) return MAKERESULT(Module_Libnx, LibnxError_IncompatSysVer); - return serviceDispatch(&g_smSrv, 4); + return _smCmdInPid(4); }