=?UTF-8?Q?Michael=20M=C3=BCller=20?=: ntdll: Mark LDR data as initialized.

Alexandre Julliard julliard at winehq.org
Mon Apr 24 16:11:22 CDT 2017


Module: wine
Branch: master
Commit: a3452656147cb5cf74d2f7380d83200e001eaffb
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=a3452656147cb5cf74d2f7380d83200e001eaffb

Author: Michael Müller <michael at 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 at fds-team.de>
Signed-off-by: Alexandre Julliard <julliard at 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 );




More information about the wine-cvs mailing list