Alexandre Julliard : ntdll: Only grab the loader lock once we actually call external functions.
Module: wine Branch: master Commit: 254c17f841748993d24e4b988cd7c03c78725714 URL: http://source.winehq.org/git/wine.git/?a=commit;h=254c17f841748993d24e4b988c... Author: Alexandre Julliard <julliard(a)winehq.org> Date: Sat Mar 1 13:30:34 2008 +0100 ntdll: Only grab the loader lock once we actually call external functions. --- dlls/ntdll/loader.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c index 8ce5a62..11447eb 100644 --- a/dlls/ntdll/loader.c +++ b/dlls/ntdll/loader.c @@ -2340,8 +2340,6 @@ void WINAPI LdrInitializeThunk( ULONG unknown1, ULONG unknown2, ULONG unknown3, status = server_init_process_done(); if (status != STATUS_SUCCESS) goto error; - RtlEnterCriticalSection( &loader_section ); - actctx_init(); load_path = NtCurrentTeb()->Peb->ProcessParameters->DllPath.Buffer; if ((status = fixup_imports( wm, load_path )) != STATUS_SUCCESS) goto error; @@ -2350,6 +2348,8 @@ void WINAPI LdrInitializeThunk( ULONG unknown1, ULONG unknown2, ULONG unknown3, pthread_functions.sigprocmask( SIG_UNBLOCK, &server_block_set, NULL ); + RtlEnterCriticalSection( &loader_section ); + if ((status = process_attach( wm, (LPVOID)1 )) != STATUS_SUCCESS) { if (last_failed_modref)
participants (1)
-
Alexandre Julliard