Module: wine Branch: master Commit: 2017db7d0af4421357ad58fee880f6eeb162e4f2 URL: https://source.winehq.org/git/wine.git/?a=commit;h=2017db7d0af4421357ad58fee...
Author: Jacek Caban jacek@codeweavers.com Date: Fri Apr 12 15:20:28 2019 +0200
ntoskrnl.exe: Open thread with THREAD_QUERY_INFORMATION access in KeGetCurrentThread.
Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/ntoskrnl.exe/ntoskrnl.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c index 861eb40..3789abd 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.c +++ b/dlls/ntoskrnl.exe/ntoskrnl.c @@ -2510,7 +2510,8 @@ PRKTHREAD WINAPI KeGetCurrentThread(void) HANDLE handle = GetCurrentThread();
/* FIXME: we shouldn't need it, GetCurrentThread() should be client thread already */ - if (GetCurrentThreadId() == request_thread) handle = OpenThread( 0, FALSE, client_tid ); + if (GetCurrentThreadId() == request_thread) + handle = OpenThread( THREAD_QUERY_INFORMATION, FALSE, client_tid );
kernel_object_from_handle( handle, PsThreadType, (void**)&thread ); if (handle != GetCurrentThread()) NtClose( handle );