mirror of
https://github.com/reactos/reactos.git
synced 2025-07-03 05:31:21 +00:00
[NDK-RTL]
The parameter of RtlAllocateActivationContextStack is of type PACTIVATION_CONTEXT_STACK*. svn path=/trunk/; revision=58548
This commit is contained in:
parent
777fb8e63a
commit
b24c620ea3
4 changed files with 10 additions and 10 deletions
|
@ -508,7 +508,7 @@ LdrpInitializeThread(IN PCONTEXT Context)
|
|||
|
||||
/* Allocate an Activation Context Stack */
|
||||
DPRINT("ActivationContextStack %p\n", NtCurrentTeb()->ActivationContextStackPointer);
|
||||
Status = RtlAllocateActivationContextStack((PVOID*)&NtCurrentTeb()->ActivationContextStackPointer);
|
||||
Status = RtlAllocateActivationContextStack(&NtCurrentTeb()->ActivationContextStackPointer);
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
DPRINT1("Warning: Unable to allocate ActivationContextStack\n");
|
||||
|
@ -1709,7 +1709,7 @@ LdrpInitializeProcess(IN PCONTEXT Context,
|
|||
}
|
||||
|
||||
/* Allocate an Activation Context Stack */
|
||||
Status = RtlAllocateActivationContextStack((PVOID *)&Teb->ActivationContextStackPointer);
|
||||
Status = RtlAllocateActivationContextStack(&Teb->ActivationContextStackPointer);
|
||||
if (!NT_SUCCESS(Status)) return Status;
|
||||
|
||||
// FIXME: Loader private heap is missing
|
||||
|
|
|
@ -31,14 +31,14 @@ typedef struct _FIBER /* Field offsets: */
|
|||
{ /* 32 bit 64 bit */
|
||||
/* this must be the first field */
|
||||
PVOID Parameter; /* 0x00 0x00 */
|
||||
struct _EXCEPTION_REGISTRATION_RECORD * ExceptionList; /* 0x04 0x08 */
|
||||
PEXCEPTION_REGISTRATION_RECORD ExceptionList; /* 0x04 0x08 */
|
||||
PVOID StackBase; /* 0x08 0x10 */
|
||||
PVOID StackLimit; /* 0x0C 0x18 */
|
||||
PVOID DeallocationStack; /* 0x10 0x20 */
|
||||
CONTEXT Context; /* 0x14 0x28 */
|
||||
ULONG GuaranteedStackBytes; /* 0x2E0 */
|
||||
PVOID FlsData; /* 0x2E4 */
|
||||
PVOID ActivationContextStack; /* 0x2E8 */
|
||||
PVOID /* PACTIVATION_CONTEXT_STACK */ ActivationContextStack; /* 0x2E8 */
|
||||
} FIBER, *PFIBER;
|
||||
|
||||
typedef struct
|
||||
|
|
|
@ -3503,7 +3503,7 @@ NTSYSAPI
|
|||
NTSTATUS
|
||||
NTAPI
|
||||
RtlAllocateActivationContextStack(
|
||||
_In_ PVOID *Context
|
||||
_In_ PACTIVATION_CONTEXT_STACK *Stack
|
||||
);
|
||||
|
||||
NTSYSAPI
|
||||
|
|
|
@ -2429,7 +2429,7 @@ RtlDeactivateActivationContext( ULONG flags, ULONG_PTR cookie )
|
|||
|
||||
VOID
|
||||
NTAPI
|
||||
RtlFreeActivationContextStack(PACTIVATION_CONTEXT_STACK Stack)
|
||||
RtlFreeActivationContextStack(IN PACTIVATION_CONTEXT_STACK Stack)
|
||||
{
|
||||
PRTL_ACTIVATION_CONTEXT_STACK_FRAME ActiveFrame, PrevFrame;
|
||||
|
||||
|
@ -2775,15 +2775,15 @@ RtlFindActivationContextSectionString( ULONG flags, const GUID *guid, ULONG sect
|
|||
|
||||
NTSTATUS
|
||||
NTAPI
|
||||
RtlAllocateActivationContextStack(IN PVOID *Context)
|
||||
RtlAllocateActivationContextStack(IN PACTIVATION_CONTEXT_STACK *Stack)
|
||||
{
|
||||
PACTIVATION_CONTEXT_STACK ContextStack;
|
||||
|
||||
/* Check if it's already allocated */
|
||||
if (*Context) return STATUS_SUCCESS;
|
||||
if (*Stack) return STATUS_SUCCESS;
|
||||
|
||||
/* Allocate space for the context stack */
|
||||
ContextStack = RtlAllocateHeap(RtlGetProcessHeap(), HEAP_ZERO_MEMORY, sizeof (ACTIVATION_CONTEXT_STACK) );
|
||||
ContextStack = RtlAllocateHeap(RtlGetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(ACTIVATION_CONTEXT_STACK));
|
||||
if (!ContextStack)
|
||||
{
|
||||
return STATUS_NO_MEMORY;
|
||||
|
@ -2796,7 +2796,7 @@ RtlAllocateActivationContextStack(IN PVOID *Context)
|
|||
ContextStack->NextCookieSequenceNumber = 1;
|
||||
ContextStack->StackId = 1; //TODO: Timer-based
|
||||
|
||||
*Context = ContextStack;
|
||||
*Stack = ContextStack;
|
||||
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue