Module: wine Branch: master Commit: 9e7a9270e2a7fd5eaf388c1b9277e52b5bbb48e2 URL: https://gitlab.winehq.org/wine/wine/-/commit/9e7a9270e2a7fd5eaf388c1b9277e52...
Author: Alexandre Julliard julliard@winehq.org Date: Tue Nov 22 13:58:49 2022 +0100
ntdll: Fall back to the current loader if the corresponding 32/64-bit loader isn't found.
---
dlls/ntdll/unix/env.c | 1 + dlls/ntdll/unix/loader.c | 7 +------ 2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/dlls/ntdll/unix/env.c b/dlls/ntdll/unix/env.c index 46c3d97c852..328040bbda6 100644 --- a/dlls/ntdll/unix/env.c +++ b/dlls/ntdll/unix/env.c @@ -1863,6 +1863,7 @@ static void init_peb( RTL_USER_PROCESS_PARAMETERS *params, void *module ) NtCurrentTeb()->Tib.ExceptionList = (void *)((char *)NtCurrentTeb() + teb_offset); wow_peb = (PEB32 *)((char *)peb + page_size); set_thread_id( NtCurrentTeb(), GetCurrentProcessId(), GetCurrentThreadId() ); + ERR( "starting %s in experimental wow64 mode\n", debugstr_us(¶ms->ImagePathName) ); } #endif
diff --git a/dlls/ntdll/unix/loader.c b/dlls/ntdll/unix/loader.c index db9e1d60162..f87e11f073c 100644 --- a/dlls/ntdll/unix/loader.c +++ b/dlls/ntdll/unix/loader.c @@ -706,14 +706,9 @@ static NTSTATUS loader_exec( char **argv, WORD machine ) strcpy( argv[1], wineloader ); strcat( argv[1], "64" ); preloader_exec( argv ); - return STATUS_INVALID_IMAGE_FORMAT; } } - else if ((argv[1] = remove_tail( wineloader, "64" ))) - { - preloader_exec( argv ); - return STATUS_INVALID_IMAGE_FORMAT; - } + else if ((argv[1] = remove_tail( wineloader, "64" ))) preloader_exec( argv ); }
argv[1] = strdup( wineloader );