mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-02 04:13:34 +00:00
- Reformat heap.c to ROS standards
- HeapCreate should mask out NT flags and tag allocations with CLASS 1. - Implemented HeapCreateTagsW, HeapExtend, HeapQueryTagW, HeapSummary, HeapUsage. - Stubbed RtlUsageHeap, RtlQueryTagHeap, RtlExtendHeap, RtlCreateTagHeap. svn path=/trunk/; revision=22583
This commit is contained in:
@@ -452,8 +452,8 @@ RtlCreateTagHeap(
|
||||
ULONG
|
||||
NTAPI
|
||||
RtlCompactHeap(
|
||||
HANDLE heap,
|
||||
ULONG flags
|
||||
HANDLE Heap,
|
||||
ULONG Flags
|
||||
);
|
||||
|
||||
NTSYSAPI
|
||||
@@ -471,7 +471,26 @@ RtlDebugCreateHeap(
|
||||
NTSYSAPI
|
||||
HANDLE
|
||||
NTAPI
|
||||
RtlDestroyHeap(HANDLE hheap);
|
||||
RtlDestroyHeap(
|
||||
IN HANDLE Heap
|
||||
);
|
||||
|
||||
NTSYSAPI
|
||||
HANDLE
|
||||
NTAPI
|
||||
RtlDestroyHeap(
|
||||
IN HANDLE Heap
|
||||
);
|
||||
|
||||
NTSYSAPI
|
||||
ULONG
|
||||
NTAPI
|
||||
RtlExtendHeap(
|
||||
IN HANDLE Heap,
|
||||
IN ULONG Flags,
|
||||
IN PVOID P,
|
||||
IN ULONG Size
|
||||
);
|
||||
|
||||
NTSYSAPI
|
||||
BOOLEAN
|
||||
@@ -506,6 +525,17 @@ RtlGetUserInfoHeap(
|
||||
OUT PULONG UserFlags
|
||||
);
|
||||
|
||||
NTSYSAPI
|
||||
PWSTR
|
||||
NTAPI
|
||||
RtlQueryTagHeap(
|
||||
IN PVOID HeapHandle,
|
||||
IN ULONG Flags,
|
||||
IN USHORT TagIndex,
|
||||
IN BOOLEAN ResetCounters,
|
||||
OUT PRTL_HEAP_TAG_INFO HeapTagInfo
|
||||
);
|
||||
|
||||
NTSYSAPI
|
||||
PVOID
|
||||
NTAPI
|
||||
@@ -519,12 +549,25 @@ RtlReAllocateHeap(
|
||||
NTSYSAPI
|
||||
BOOLEAN
|
||||
NTAPI
|
||||
RtlLockHeap(IN HANDLE Heap);
|
||||
RtlLockHeap(
|
||||
IN HANDLE Heap
|
||||
);
|
||||
|
||||
NTSYSAPI
|
||||
NTSTATUS
|
||||
NTAPI
|
||||
RtlUsageHeap(
|
||||
IN HANDLE Heap,
|
||||
IN ULONG Flags,
|
||||
OUT PRTL_HEAP_USAGE Usage
|
||||
);
|
||||
|
||||
NTSYSAPI
|
||||
BOOLEAN
|
||||
NTAPI
|
||||
RtlUnlockHeap(IN HANDLE Heap);
|
||||
RtlUnlockHeap(
|
||||
IN HANDLE Heap
|
||||
);
|
||||
|
||||
BOOLEAN
|
||||
NTAPI
|
||||
@@ -550,7 +593,7 @@ NTAPI
|
||||
RtlValidateHeap(
|
||||
HANDLE Heap,
|
||||
ULONG Flags,
|
||||
PVOID pmem
|
||||
PVOID P
|
||||
);
|
||||
|
||||
#define RtlGetProcessHeap() (NtCurrentPeb()->ProcessHeap)
|
||||
|
||||
@@ -780,6 +780,31 @@ typedef struct _RTL_PROCESS_MODULE_INFORMATION_EX
|
||||
PVOID DefaultBase;
|
||||
} RTL_PROCESS_MODULE_INFORMATION_EX, *PRTL_PROCESS_MODULE_INFORMATION_EX;
|
||||
|
||||
typedef struct _RTL_HEAP_TAG_INFO
|
||||
{
|
||||
ULONG NumberOfAllocations;
|
||||
ULONG NumberOfFrees;
|
||||
ULONG BytesAllocated;
|
||||
} RTL_HEAP_TAG_INFO, *PRTL_HEAP_TAG_INFO;
|
||||
|
||||
typedef struct _RTL_HEAP_USAGE_ENTRY
|
||||
{
|
||||
struct _RTL_HEAP_USAGE_ENTRY *Next;
|
||||
} RTL_HEAP_USAGE_ENTRY, *PRTL_HEAP_USAGE_ENTRY;
|
||||
|
||||
typedef struct _RTL_HEAP_USAGE
|
||||
{
|
||||
ULONG Length;
|
||||
ULONG BytesAllocated;
|
||||
ULONG BytesCommitted;
|
||||
ULONG BytesReserved;
|
||||
ULONG BytesReservedMaximum;
|
||||
PRTL_HEAP_USAGE_ENTRY Entries;
|
||||
PRTL_HEAP_USAGE_ENTRY AddedEntries;
|
||||
PRTL_HEAP_USAGE_ENTRY RemovedEntries;
|
||||
UCHAR Reserved[32];
|
||||
} RTL_HEAP_USAGE, *PRTL_HEAP_USAGE;
|
||||
|
||||
typedef struct _RTL_HEAP_INFORMATION
|
||||
{
|
||||
PVOID BaseAddress;
|
||||
|
||||
Reference in New Issue
Block a user