Module: wine Branch: master Commit: a3452656147cb5cf74d2f7380d83200e001eaffb URL: http://source.winehq.org/git/wine.git/?a=commit;h=a3452656147cb5cf74d2f7380d...
Author: Michael Müller michael@fds-team.de Date: Sun Apr 23 23:17:00 2017 +0200
ntdll: Mark LDR data as initialized.
Signed-off-by: Michael Müller michael@fds-team.de Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/kernel32/tests/loader.c | 7 +++++-- dlls/ntdll/thread.c | 1 + 2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/dlls/kernel32/tests/loader.c b/dlls/kernel32/tests/loader.c index 4f72c3e..2587a97 100644 --- a/dlls/kernel32/tests/loader.c +++ b/dlls/kernel32/tests/loader.c @@ -2991,10 +2991,13 @@ static void test_ResolveDelayLoadedAPI(void)
static void test_InMemoryOrderModuleList(void) { - LIST_ENTRY *entry1, *mark1 = &NtCurrentTeb()->Peb->LdrData->InLoadOrderModuleList; - LIST_ENTRY *entry2, *mark2 = &NtCurrentTeb()->Peb->LdrData->InMemoryOrderModuleList; + PEB_LDR_DATA *ldr = NtCurrentTeb()->Peb->LdrData; + LIST_ENTRY *entry1, *mark1 = &ldr->InLoadOrderModuleList; + LIST_ENTRY *entry2, *mark2 = &ldr->InMemoryOrderModuleList; LDR_MODULE *module1, *module2;
+ ok(ldr->Initialized == TRUE, "expected TRUE, got %u\n", ldr->Initialized); + for (entry1 = mark1->Flink, entry2 = mark2->Flink; entry1 != mark1 && entry2 != mark2; entry1 = entry1->Flink, entry2 = entry2->Flink) diff --git a/dlls/ntdll/thread.c b/dlls/ntdll/thread.c index c9a5da6..0506f6b 100644 --- a/dlls/ntdll/thread.c +++ b/dlls/ntdll/thread.c @@ -259,6 +259,7 @@ HANDLE thread_init(void) params.CurrentDirectory.DosPath.MaximumLength = sizeof(current_dir); params.wShowWindow = 1; /* SW_SHOWNORMAL */ ldr.Length = sizeof(ldr); + ldr.Initialized = TRUE; RtlInitializeBitMap( &tls_bitmap, peb->TlsBitmapBits, sizeof(peb->TlsBitmapBits) * 8 ); RtlInitializeBitMap( &tls_expansion_bitmap, peb->TlsExpansionBitmapBits, sizeof(peb->TlsExpansionBitmapBits) * 8 );