Implement RtlInsertHeadList() and RtlInsertTailList()
All checks were successful
ci/woodpecker/push/build Pipeline was successful
All checks were successful
ci/woodpecker/push/build Pipeline was successful
This commit is contained in:
parent
ba8b9684ff
commit
14fafa2517
@ -22,6 +22,16 @@ XTINLINE
|
|||||||
VOID
|
VOID
|
||||||
RtlInitializeListHead32(IN PLIST_ENTRY32 ListHead);
|
RtlInitializeListHead32(IN PLIST_ENTRY32 ListHead);
|
||||||
|
|
||||||
|
XTINLINE
|
||||||
|
VOID
|
||||||
|
RtlInsertHeadList(IN OUT PLIST_ENTRY ListHead,
|
||||||
|
IN OUT PLIST_ENTRY Entry);
|
||||||
|
|
||||||
|
XTINLINE
|
||||||
|
VOID
|
||||||
|
RtlInsertTailList(IN OUT PLIST_ENTRY ListHead,
|
||||||
|
IN OUT PLIST_ENTRY Entry);
|
||||||
|
|
||||||
XTINLINE
|
XTINLINE
|
||||||
BOOLEAN
|
BOOLEAN
|
||||||
RtlListEmpty(PLIST_ENTRY ListHead);
|
RtlListEmpty(PLIST_ENTRY ListHead);
|
||||||
|
@ -45,6 +45,54 @@ RtlInitializeListHead32(IN PLIST_ENTRY32 ListHead)
|
|||||||
ListHead->Flink = PtrToUlong(ListHead);
|
ListHead->Flink = PtrToUlong(ListHead);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This routine inserts an entry at the head of a double linked list.
|
||||||
|
*
|
||||||
|
* @param ListHead
|
||||||
|
* Pointer to the head of the list.
|
||||||
|
*
|
||||||
|
* @param Entry
|
||||||
|
* Pointer to the entry that will be inserted in the list.
|
||||||
|
*
|
||||||
|
* @return This routine does not return any value.
|
||||||
|
*
|
||||||
|
* @since XT 1.0
|
||||||
|
*/
|
||||||
|
XTINLINE
|
||||||
|
VOID
|
||||||
|
RtlInsertHeadList(IN OUT PLIST_ENTRY ListHead,
|
||||||
|
IN OUT PLIST_ENTRY Entry)
|
||||||
|
{
|
||||||
|
Entry->Flink = ListHead->Flink;
|
||||||
|
Entry->Blink = ListHead;
|
||||||
|
ListHead->Flink->Blink = Entry;
|
||||||
|
ListHead->Flink = Entry;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This routine inserts an entry at the tail of a double linked list.
|
||||||
|
*
|
||||||
|
* @param ListHead
|
||||||
|
* Pointer to the head of the list.
|
||||||
|
*
|
||||||
|
* @param Entry
|
||||||
|
* Pointer to the entry that will be inserted in the list.
|
||||||
|
*
|
||||||
|
* @return This routine does not return any value.
|
||||||
|
*
|
||||||
|
* @since XT 1.0
|
||||||
|
*/
|
||||||
|
XTINLINE
|
||||||
|
VOID
|
||||||
|
RtlInsertTailList(IN OUT PLIST_ENTRY ListHead,
|
||||||
|
IN OUT PLIST_ENTRY Entry)
|
||||||
|
{
|
||||||
|
Entry->Flink = ListHead;
|
||||||
|
Entry->Blink = ListHead->Blink;
|
||||||
|
ListHead->Blink->Flink = Entry;
|
||||||
|
ListHead->Blink = Entry;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Indicates whether a double linked list structure is empty.
|
* Indicates whether a double linked list structure is empty.
|
||||||
*
|
*
|
||||||
|
Loading…
Reference in New Issue
Block a user