From: short <> Date: Thu, 30 Jan 2003 10:40:18 +0000 (+0000) Subject: ExfInterlockedInsertTailList(): Permit uninitialized (zeroed) ListHead X-Git-Tag: captive-0_2~88 X-Git-Url: http://git.jankratochvil.net/?a=commitdiff_plain;h=ec85780a677e82669734a53738ae230ed643479d;hp=fd0c151ff143b508a6bd07d347c71ac8e1c083ff;p=reactos.git ExfInterlockedInsertTailList(): Permit uninitialized (zeroed) ListHead - function is called on data initialized by ntoskrnl.exe->DriverEntry() - libcaptive does not call ntoskrnl.exe->DriverEntry() --- diff --git a/ntoskrnl/ex/list.c b/ntoskrnl/ex/list.c index d4b0e1c..55fdec5 100644 --- a/ntoskrnl/ex/list.c +++ b/ntoskrnl/ex/list.c @@ -295,6 +295,10 @@ ExfInterlockedInsertTailList(IN PLIST_ENTRY ListHead, { Old = ListHead->Blink; } +#ifdef LIBCAPTIVE + if (!ListHead->Flink && !ListHead->Blink) + InitializeListHead(ListHead); +#endif /* LIBCAPTIVE */ InsertTailList(ListHead,ListEntry); KeReleaseSpinLock(Lock,oldlvl);