From 2158f71eb22f8748f8fb5cebaf17740127c6fc7a Mon Sep 17 00:00:00 2001 From: Kartik Date: Mon, 15 Jan 2018 17:15:05 +0530 Subject: [PATCH] Add timeout in NS_TerminateProcessTID() (#389) --- libctru/include/3ds/services/ns.h | 3 ++- libctru/source/services/ns.c | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/libctru/include/3ds/services/ns.h b/libctru/include/3ds/services/ns.h index 9b3100a..4f11036 100644 --- a/libctru/include/3ds/services/ns.h +++ b/libctru/include/3ds/services/ns.h @@ -41,5 +41,6 @@ Result NS_RebootToTitle(u8 mediatype, u64 titleid); /** * @brief Terminates the process with the specified titleid. * @param titleid ID of the title to terminate. + * @param timeout Timeout in nanoseconds. Pass 0 if not required. */ -Result NS_TerminateProcessTID(u64 titleid); +Result NS_TerminateProcessTID(u64 titleid, u64 timeout); \ No newline at end of file diff --git a/libctru/source/services/ns.c b/libctru/source/services/ns.c index 5867f37..11ddf39 100644 --- a/libctru/source/services/ns.c +++ b/libctru/source/services/ns.c @@ -89,7 +89,7 @@ Result NS_RebootToTitle(u8 mediatype, u64 titleid) return (Result)cmdbuf[1]; } -Result NS_TerminateProcessTID(u64 titleid) +Result NS_TerminateProcessTID(u64 titleid, u64 timeout) { Result ret = 0; u32 *cmdbuf = getThreadCommandBuffer(); @@ -97,8 +97,8 @@ Result NS_TerminateProcessTID(u64 titleid) cmdbuf[0] = IPC_MakeHeader(0x11,4,0); // 0x110100 cmdbuf[1] = titleid & 0xffffffff; cmdbuf[2] = (titleid >> 32) & 0xffffffff; - cmdbuf[3] = 0x0; - cmdbuf[4] = 0x0; + cmdbuf[3] = timeout & 0xffffffff; + cmdbuf[4] = (timeout >> 32) & 0xffffffff; if(R_FAILED(ret = svcSendSyncRequest(nsHandle)))return ret;