ntdll: Fix modules order in InInitializationOrderModuleList.

This commit is contained in:
Piotr Caban 2015-08-11 19:21:57 +02:00 committed by Alexandre Julliard
parent b741180b3a
commit 18d9ca872a
1 changed files with 4 additions and 4 deletions

View File

@ -1166,6 +1166,10 @@ static NTSTATUS process_attach( WINE_MODREF *wm, LPVOID lpReserved )
if ((status = process_attach( wm->deps[i], lpReserved )) != STATUS_SUCCESS) break;
}
if (!wm->ldr.InInitializationOrderModuleList.Flink)
InsertTailList(&NtCurrentTeb()->Peb->LdrData->InInitializationOrderModuleList,
&wm->ldr.InInitializationOrderModuleList);
/* Call DLL entry point */
if (status == STATUS_SUCCESS)
{
@ -1184,10 +1188,6 @@ static NTSTATUS process_attach( WINE_MODREF *wm, LPVOID lpReserved )
current_modref = prev;
}
if (!wm->ldr.InInitializationOrderModuleList.Flink)
InsertTailList(&NtCurrentTeb()->Peb->LdrData->InInitializationOrderModuleList,
&wm->ldr.InInitializationOrderModuleList);
if (wm->ldr.ActivationContext) RtlDeactivateActivationContext( 0, cookie );
/* Remove recursion flag */
wm->ldr.Flags &= ~LDR_LOAD_IN_PROGRESS;