From 31c4c2efe90818bf430c2a876750326ba0a9ba80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herm=C3=A8s=20B=C3=A9lusca-Ma=C3=AFto?= Date: Sun, 26 Sep 2021 18:58:28 +0200 Subject: [PATCH] [USER32] GetUserObjectSecurity/SetUserObjectSecurity: Just use UserSetLastNTError() in failure path. --- win32ss/user/user32/misc/misc.c | 42 +++++++++++++-------------------- 1 file changed, 16 insertions(+), 26 deletions(-) diff --git a/win32ss/user/user32/misc/misc.c b/win32ss/user/user32/misc/misc.c index 5c8e961c305..621ec567f8e 100644 --- a/win32ss/user/user32/misc/misc.c +++ b/win32ss/user/user32/misc/misc.c @@ -80,21 +80,16 @@ GetUserObjectSecurity( OUT PDWORD pdwLengthNeeded ) { -DWORD dwWin32Error; -NTSTATUS Status; + NTSTATUS Status; - - Status = NtQuerySecurityObject( - hObject, // Object Handle - *pSecurityInfo, // Security Information - pSecurityDescriptor,// Security Descriptor - dwLength, // Buffer Length - pdwLengthNeeded // Actual Length - ); - - if ( ! NT_SUCCESS( Status ) ) { - dwWin32Error = RtlNtStatusToDosError( Status ); - NtCurrentTeb()->LastErrorValue = dwWin32Error; + Status = NtQuerySecurityObject(hObject, + *pSecurityInfo, + pSecurityDescriptor, + dwLength, + pdwLengthNeeded); + if (!NT_SUCCESS(Status)) + { + UserSetLastNTError(Status); return FALSE; } @@ -128,19 +123,14 @@ SetUserObjectSecurity( IN PSECURITY_DESCRIPTOR pSecurityDescriptor ) { -DWORD dwWin32Error; -NTSTATUS Status; + NTSTATUS Status; - - Status = NtSetSecurityObject( - hObject, // Object Handle - *pSecurityInfo, // Security Information - pSecurityDescriptor // Security Descriptor - ); - - if ( ! NT_SUCCESS( Status ) ) { - dwWin32Error = RtlNtStatusToDosError( Status ); - NtCurrentTeb()->LastErrorValue = dwWin32Error; + Status = NtSetSecurityObject(hObject, + *pSecurityInfo, + pSecurityDescriptor); + if (!NT_SUCCESS(Status)) + { + UserSetLastNTError(Status); return FALSE; }