From 18d9ca872a2c63ab1ba992d6d527758f29d141bd Mon Sep 17 00:00:00 2001 From: Piotr Caban Date: Tue, 11 Aug 2015 19:21:57 +0200 Subject: [PATCH] ntdll: Fix modules order in InInitializationOrderModuleList. --- dlls/ntdll/loader.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c index bef0ab1e503..0e91af45be7 100644 --- a/dlls/ntdll/loader.c +++ b/dlls/ntdll/loader.c @@ -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;