PipMoveListEntries
VOID __stdcall PipMoveListEntries(LIST_ENTRY *TargetHead, LIST_ENTRY *SourceHead){
_LIST_ENTRY *Flink;
_LIST_ENTRY *Blink;
_LIST_ENTRY *v4;
Flink = SourceHead->Flink;
if( SourceHead->Flink != SourceHead )
{
if( Flink->Blink != SourceHead
|| (Blink = SourceHead->Blink, Blink->Flink != SourceHead)
|| (Blink->Flink = Flink,
Flink->Blink = Blink,
SourceHead->Blink = SourceHead,
SourceHead->Flink = SourceHead,
v4 = TargetHead->Blink,
TargetHead->Flink->Blink != TargetHead)
|| v4->Flink != TargetHead
|| Flink->Flink->Blink != Flink
|| Flink->Blink->Flink != Flink )
{
__fastfail(3u);
}
v4->Flink = Flink;
TargetHead->Blink = Flink->Blink;
Flink->Blink->Flink = TargetHead;
Flink->Blink = v4;
}
}Referenced by:
PipMergeDependencyEdgeList
PipMergeDependencyNodes