From 1b4a3bb54faa5d0ba8dc1093b68b612e60efef22 Mon Sep 17 00:00:00 2001 From: ergo720 <45463469+ergo720@users.noreply.github.com> Date: Tue, 7 Mar 2023 15:40:42 +0100 Subject: [PATCH] Moved position of ObfDereferenceObject in NtSuspendThread --- src/core/kernel/exports/EmuKrnlNt.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/core/kernel/exports/EmuKrnlNt.cpp b/src/core/kernel/exports/EmuKrnlNt.cpp index fd461dff7..19be4b8e0 100644 --- a/src/core/kernel/exports/EmuKrnlNt.cpp +++ b/src/core/kernel/exports/EmuKrnlNt.cpp @@ -2098,13 +2098,11 @@ XBSYSAPI EXPORTNUM(231) xbox::ntstatus_xt NTAPI xbox::NtSuspendThread } ulong_xt PrevSuspendCount = KeSuspendThread(&Thread->Tcb); + ObfDereferenceObject(Thread); if (PrevSuspendCount == X_STATUS_SUSPEND_COUNT_EXCEEDED) { - ObfDereferenceObject(Thread); RETURN(X_STATUS_SUSPEND_COUNT_EXCEEDED); } - ObfDereferenceObject(Thread); - if (PreviousSuspendCount) { *PreviousSuspendCount = PrevSuspendCount; }