From: Zebediah Figura zfigura@codeweavers.com
--- dlls/ntdll/unix/thread.c | 20 ++++++++++++++++++++ include/winternl.h | 1 + 2 files changed, 21 insertions(+)
diff --git a/dlls/ntdll/unix/thread.c b/dlls/ntdll/unix/thread.c index d56962e1721..7ebeffe3e73 100644 --- a/dlls/ntdll/unix/thread.c +++ b/dlls/ntdll/unix/thread.c @@ -2191,6 +2191,26 @@ NTSTATUS WINAPI NtQueryInformationThread( HANDLE handle, THREADINFOCLASS class, case ThreadEnableAlignmentFaultFixup: return STATUS_INVALID_INFO_CLASS;
+ case ThreadWineUnixIds: + { + int *info = data; + + if (length != 2 * sizeof(int)) return STATUS_INFO_LENGTH_MISMATCH; + + SERVER_START_REQ( get_thread_times ) + { + req->handle = wine_server_obj_handle( handle ); + status = wine_server_call( req ); + if (status == STATUS_SUCCESS) + { + info[0] = reply->unix_pid; + info[1] = reply->unix_tid; + } + } + SERVER_END_REQ; + return status; + } + case ThreadPriority: case ThreadBasePriority: case ThreadImpersonationToken: diff --git a/include/winternl.h b/include/winternl.h index 5a99827fe65..6ed08c5ec95 100644 --- a/include/winternl.h +++ b/include/winternl.h @@ -1900,6 +1900,7 @@ typedef enum _THREADINFOCLASS { MaxThreadInfoClass, #ifdef __WINESRC__ ThreadWineNativeThreadName = 1000, + ThreadWineUnixIds, #endif } THREADINFOCLASS;