diff --git a/sdk/include/ndk/rtlfuncs.h b/sdk/include/ndk/rtlfuncs.h index 39f07dfd2e5..2df1cd0e957 100644 --- a/sdk/include/ndk/rtlfuncs.h +++ b/sdk/include/ndk/rtlfuncs.h @@ -2801,7 +2801,7 @@ RtlInitializeContext( _Out_ PCONTEXT ThreadContext, _In_opt_ PVOID ThreadStartParam, _In_ PTHREAD_START_ROUTINE ThreadStartAddress, - _In_ PINITIAL_TEB InitialTeb + _In_ PVOID StackBase ); #ifdef _M_AMD64 diff --git a/sdk/lib/rtl/amd64/stubs.c b/sdk/lib/rtl/amd64/stubs.c index 0f02e60a41a..1b77d0d2b15 100644 --- a/sdk/lib/rtl/amd64/stubs.c +++ b/sdk/lib/rtl/amd64/stubs.c @@ -25,7 +25,7 @@ RtlInitializeContext( _Out_ PCONTEXT ThreadContext, _In_opt_ PVOID ThreadStartParam, _In_ PTHREAD_START_ROUTINE ThreadStartAddress, - _In_ PINITIAL_TEB StackBase) + _In_ PVOID StackBase) { /* Initialize everything to 0 */ RtlZeroMemory(ThreadContext, sizeof(*ThreadContext)); diff --git a/sdk/lib/rtl/i386/thread.c b/sdk/lib/rtl/i386/thread.c index 48ebbf50623..a2a57efafed 100644 --- a/sdk/lib/rtl/i386/thread.c +++ b/sdk/lib/rtl/i386/thread.c @@ -24,14 +24,15 @@ */ VOID NTAPI -RtlInitializeContext(IN HANDLE ProcessHandle, - OUT PCONTEXT ThreadContext, - IN PVOID ThreadStartParam OPTIONAL, - IN PTHREAD_START_ROUTINE ThreadStartAddress, - IN PINITIAL_TEB InitialTeb) +RtlInitializeContext( + _In_ HANDLE ProcessHandle, + _Out_ PCONTEXT ThreadContext, + _In_opt_ PVOID ThreadStartParam, + _In_ PTHREAD_START_ROUTINE ThreadStartAddress, + _In_ PVOID StackBase) { - DPRINT("RtlInitializeContext: (hProcess: %p, ThreadContext: %p, Teb: %p\n", - ProcessHandle, ThreadContext, InitialTeb); + DPRINT("RtlInitializeContext: (hProcess: %p, ThreadContext: %p, StackBase: %p\n", + ProcessHandle, ThreadContext, StackBase); /* * Set the Initial Registers @@ -58,7 +59,7 @@ RtlInitializeContext(IN HANDLE ProcessHandle, /* Settings passed */ ThreadContext->Eip = (ULONG)ThreadStartAddress; - ThreadContext->Esp = (ULONG)InitialTeb; + ThreadContext->Esp = (ULONG)StackBase; /* Only the basic Context is initialized */ ThreadContext->ContextFlags = CONTEXT_CONTROL |