Module: wine Branch: master Commit: 6d9cf4910329c01032662ca6ce87a3138ba3e0eb URL: http://source.winehq.org/git/wine.git/?a=commit;h=6d9cf4910329c01032662ca6ce...
Author: Sebastian Lackner sebastian@fds-team.de Date: Wed Sep 23 20:19:52 2015 +0200
ntdll: Ignore higher bits in selector for ThreadDescriptorTableEntry info query.
Fixes a random test failure in kernel32/thread tests caused by the uninitialized HIWORD.
Signed-off-by: Sebastian Lackner sebastian@fds-team.de
---
dlls/ntdll/thread.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/ntdll/thread.c b/dlls/ntdll/thread.c index 0a8a7b9..b8109e1 100644 --- a/dlls/ntdll/thread.c +++ b/dlls/ntdll/thread.c @@ -1014,7 +1014,7 @@ NTSTATUS WINAPI NtQueryInformationThread( HANDLE handle, THREADINFOCLASS class, status = STATUS_INFO_LENGTH_MISMATCH; else if (!(tdi->Selector & 4)) /* GDT selector */ { - unsigned sel = tdi->Selector & ~3; /* ignore RPL */ + unsigned sel = LOWORD(tdi->Selector) & ~3; /* ignore RPL */ status = STATUS_SUCCESS; if (!sel) /* null selector */ memset( &tdi->Entry, 0, sizeof(tdi->Entry) ); @@ -1045,7 +1045,7 @@ NTSTATUS WINAPI NtQueryInformationThread( HANDLE handle, THREADINFOCLASS class, SERVER_START_REQ( get_selector_entry ) { req->handle = wine_server_obj_handle( handle ); - req->entry = tdi->Selector >> 3; + req->entry = LOWORD(tdi->Selector) >> 3; status = wine_server_call( req ); if (!status) {