Commit a0425b96 authored by Roman Pišl's avatar Roman Pišl Committed by Alexandre Julliard

ntdll: Allow loading of native libraries for Win16.

parent 31e984a0
...@@ -2828,12 +2828,6 @@ static NTSTATUS find_dll_file( const WCHAR *load_path, const WCHAR *libname, con ...@@ -2828,12 +2828,6 @@ static NTSTATUS find_dll_file( const WCHAR *load_path, const WCHAR *libname, con
status = STATUS_SUCCESS; status = STATUS_SUCCESS;
goto done; goto done;
} }
/* 16-bit files can't be loaded from the prefix */
if (libname[0] && libname[1] && !wcscmp( libname + wcslen(libname) - 2, L"16" ))
{
status = find_builtin_without_file( libname, nt_name, pwm, mapping, image_info, id );
goto done;
}
} }
} }
...@@ -2842,6 +2836,10 @@ static NTSTATUS find_dll_file( const WCHAR *load_path, const WCHAR *libname, con ...@@ -2842,6 +2836,10 @@ static NTSTATUS find_dll_file( const WCHAR *load_path, const WCHAR *libname, con
else if (!(status = RtlDosPathNameToNtPathName_U_WithStatus( libname, nt_name, NULL, NULL ))) else if (!(status = RtlDosPathNameToNtPathName_U_WithStatus( libname, nt_name, NULL, NULL )))
status = open_dll_file( nt_name, pwm, mapping, image_info, id ); status = open_dll_file( nt_name, pwm, mapping, image_info, id );
/* 16-bit files can't be loaded from the prefix */
if (status && libname[0] && libname[1] && !wcscmp( libname + wcslen(libname) - 2, L"16" ) && !contains_path( libname ))
status = find_builtin_without_file( libname, nt_name, pwm, mapping, image_info, id );
if (status == STATUS_IMAGE_MACHINE_TYPE_MISMATCH) status = STATUS_INVALID_IMAGE_FORMAT; if (status == STATUS_IMAGE_MACHINE_TYPE_MISMATCH) status = STATUS_INVALID_IMAGE_FORMAT;
done: done:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment