diff --git a/reactos/lib/advapi32/token/token.c b/reactos/lib/advapi32/token/token.c index a18996e3d1c..df55c4d7ae4 100644 --- a/reactos/lib/advapi32/token/token.c +++ b/reactos/lib/advapi32/token/token.c @@ -258,7 +258,6 @@ DuplicateTokenEx (IN HANDLE ExistingTokenHandle, OUT PHANDLE DuplicateTokenHandle) { OBJECT_ATTRIBUTES ObjectAttributes; - HANDLE NewToken; NTSTATUS Status; SECURITY_QUALITY_OF_SERVICE Sqos; @@ -291,7 +290,7 @@ DuplicateTokenEx (IN HANDLE ExistingTokenHandle, &ObjectAttributes, FALSE, TokenType, - &NewToken); + DuplicateTokenHandle); if (!NT_SUCCESS(Status)) { SetLastError(RtlNtStatusToDosError(Status)); @@ -344,7 +343,7 @@ CheckTokenMembership(IN HANDLE ExistingTokenHandle, }; PACL Dacl; ULONG SidLen; - HANDLE hToken; + HANDLE hToken = NULL; NTSTATUS Status, AccessStatus; /* doesn't return gracefully if IsMember is NULL! */ @@ -484,7 +483,7 @@ CheckTokenMembership(IN HANDLE ExistingTokenHandle, } Cleanup: - if (hToken != ExistingTokenHandle) + if (hToken != NULL && hToken != ExistingTokenHandle) { NtClose(hToken); }