From 4af490caec2228af1ffb142fd4cf32d13ca88528 Mon Sep 17 00:00:00 2001 From: Thomas Faber Date: Wed, 28 Oct 2015 11:29:42 +0000 Subject: [PATCH] [WIN32K:NTUSER] - Window station handles are normally user handles. Treat them as such CORE-10207 svn path=/trunk/; revision=69731 --- reactos/win32ss/user/ntuser/clipboard.c | 2 +- reactos/win32ss/user/ntuser/hook.c | 2 +- reactos/win32ss/user/ntuser/menu.c | 2 +- reactos/win32ss/user/ntuser/window.c | 4 ++-- reactos/win32ss/user/ntuser/winsta.c | 12 ++++++------ 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/reactos/win32ss/user/ntuser/clipboard.c b/reactos/win32ss/user/ntuser/clipboard.c index 7c4464d18ed..7ecc95d5a14 100644 --- a/reactos/win32ss/user/ntuser/clipboard.c +++ b/reactos/win32ss/user/ntuser/clipboard.c @@ -25,7 +25,7 @@ IntGetWinStaForCbAccess(VOID) NTSTATUS Status; hWinSta = UserGetProcessWindowStation(); - Status = IntValidateWindowStationHandle(hWinSta, KernelMode, WINSTA_ACCESSCLIPBOARD, &pWinStaObj, 0); + Status = IntValidateWindowStationHandle(hWinSta, UserMode, WINSTA_ACCESSCLIPBOARD, &pWinStaObj, 0); if (!NT_SUCCESS(Status)) { ERR("Cannot open winsta\n"); diff --git a/reactos/win32ss/user/ntuser/hook.c b/reactos/win32ss/user/ntuser/hook.c index 8f097c46078..c77959f80e7 100644 --- a/reactos/win32ss/user/ntuser/hook.c +++ b/reactos/win32ss/user/ntuser/hook.c @@ -1534,7 +1534,7 @@ NtUserSetWindowsHookEx( HINSTANCE Mod, } Status = IntValidateWindowStationHandle( PsGetCurrentProcess()->Win32WindowStation, - KernelMode, + UserMode, 0, &WinStaObj, 0); diff --git a/reactos/win32ss/user/ntuser/menu.c b/reactos/win32ss/user/ntuser/menu.c index ebce986d2b7..cba470f2417 100644 --- a/reactos/win32ss/user/ntuser/menu.c +++ b/reactos/win32ss/user/ntuser/menu.c @@ -4776,7 +4776,7 @@ HMENU FASTCALL UserCreateMenu(PDESKTOP Desktop, BOOL PopupMenu) */ Status = IntValidateWindowStationHandle(CurrentProcess->Win32WindowStation, - KernelMode, + UserMode, 0, &WinStaObject, 0); diff --git a/reactos/win32ss/user/ntuser/window.c b/reactos/win32ss/user/ntuser/window.c index 27439c93c72..4088a12b2b2 100644 --- a/reactos/win32ss/user/ntuser/window.c +++ b/reactos/win32ss/user/ntuser/window.c @@ -3357,7 +3357,7 @@ HWND FASTCALL UserGetShellWindow(VOID) HWND Ret; NTSTATUS Status = IntValidateWindowStationHandle(PsGetCurrentProcess()->Win32WindowStation, - KernelMode, + UserMode, 0, &WinStaObject, 0); @@ -3407,7 +3407,7 @@ NtUserSetShellWindowEx(HWND hwndShell, HWND hwndListView) } Status = IntValidateWindowStationHandle(PsGetCurrentProcess()->Win32WindowStation, - KernelMode, + UserMode, 0, &WinStaObject, 0); diff --git a/reactos/win32ss/user/ntuser/winsta.c b/reactos/win32ss/user/ntuser/winsta.c index d906a0ef158..73f5e6e3e41 100644 --- a/reactos/win32ss/user/ntuser/winsta.c +++ b/reactos/win32ss/user/ntuser/winsta.c @@ -599,7 +599,7 @@ NtUserCloseWindowStation( Status = IntValidateWindowStationHandle( hWinSta, - KernelMode, + UserMode, 0, &Object, 0); @@ -901,7 +901,7 @@ UserSetProcessWindowStation(HWINSTA hWindowStation) if(hWindowStation !=NULL) { Status = IntValidateWindowStationHandle( hWindowStation, - KernelMode, + UserMode, 0, &NewWinSta, &ObjectHandleInfo); @@ -1017,7 +1017,7 @@ NtUserLockWindowStation(HWINSTA hWindowStation) Status = IntValidateWindowStationHandle( hWindowStation, - KernelMode, + UserMode, 0, &Object, 0); @@ -1063,7 +1063,7 @@ NtUserUnlockWindowStation(HWINSTA hWindowStation) Status = IntValidateWindowStationHandle( hWindowStation, - KernelMode, + UserMode, 0, &Object, 0); @@ -1274,7 +1274,7 @@ BuildDesktopNameList( UNICODE_STRING DesktopName; Status = IntValidateWindowStationHandle(hWindowStation, - KernelMode, + UserMode, 0, &WindowStation, 0); @@ -1461,7 +1461,7 @@ NtUserSetWindowStationUser( } Status = IntValidateWindowStationHandle(hWindowStation, - KernelMode, + UserMode, 0, &WindowStation, 0);