Skip to content

Commit dd83bcd

Browse files
committed
[RTL] Create a define for the common members of HEAP and HEAP_SEGMENT. CORE-14588
The code relies on these members matching up, so it's confusing for them to be duplicated.
1 parent 2540c3b commit dd83bcd

File tree

1 file changed

+18
-28
lines changed

1 file changed

+18
-28
lines changed

sdk/lib/rtl/heap.h

Lines changed: 18 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -203,22 +203,25 @@ typedef struct _HEAP_LIST_LOOKUP
203203
PLIST_ENTRY *ListHints;
204204
} HEAP_LIST_LOOKUP, *PHEAP_LIST_LOOKUP;
205205

206+
#define HEAP_SEGMENT_MEMBERS \
207+
HEAP_ENTRY Entry; \
208+
ULONG SegmentSignature; \
209+
ULONG SegmentFlags; \
210+
LIST_ENTRY SegmentListEntry; \
211+
struct _HEAP *Heap; \
212+
PVOID BaseAddress; \
213+
ULONG NumberOfPages; \
214+
PHEAP_ENTRY FirstEntry; \
215+
PHEAP_ENTRY LastValidEntry; \
216+
ULONG NumberOfUnCommittedPages; \
217+
ULONG NumberOfUnCommittedRanges; \
218+
USHORT SegmentAllocatorBackTraceIndex; \
219+
USHORT Reserved; \
220+
LIST_ENTRY UCRSegmentList
221+
206222
typedef struct _HEAP
207223
{
208-
HEAP_ENTRY Entry;
209-
ULONG SegmentSignature;
210-
ULONG SegmentFlags;
211-
LIST_ENTRY SegmentListEntry;
212-
struct _HEAP *Heap;
213-
PVOID BaseAddress;
214-
ULONG NumberOfPages;
215-
PHEAP_ENTRY FirstEntry;
216-
PHEAP_ENTRY LastValidEntry;
217-
ULONG NumberOfUnCommittedPages;
218-
ULONG NumberOfUnCommittedRanges;
219-
USHORT SegmentAllocatorBackTraceIndex;
220-
USHORT Reserved;
221-
LIST_ENTRY UCRSegmentList;
224+
HEAP_SEGMENT_MEMBERS;
222225

223226
ULONG Flags;
224227
ULONG ForceFlags;
@@ -271,20 +274,7 @@ typedef struct _HEAP
271274

272275
typedef struct _HEAP_SEGMENT
273276
{
274-
HEAP_ENTRY Entry;
275-
ULONG SegmentSignature;
276-
ULONG SegmentFlags;
277-
LIST_ENTRY SegmentListEntry;
278-
PHEAP Heap;
279-
PVOID BaseAddress;
280-
ULONG NumberOfPages;
281-
PHEAP_ENTRY FirstEntry;
282-
PHEAP_ENTRY LastValidEntry;
283-
ULONG NumberOfUnCommittedPages;
284-
ULONG NumberOfUnCommittedRanges;
285-
USHORT SegmentAllocatorBackTraceIndex;
286-
USHORT Reserved;
287-
LIST_ENTRY UCRSegmentList;
277+
HEAP_SEGMENT_MEMBERS;
288278
} HEAP_SEGMENT, *PHEAP_SEGMENT;
289279

290280
typedef struct _HEAP_UCR_DESCRIPTOR

0 commit comments

Comments
 (0)