Module: wine Branch: master Commit: f0a6c3f6bc908d1f389348730edc353bc8c257a2 URL: https://gitlab.winehq.org/wine/wine/-/commit/f0a6c3f6bc908d1f389348730edc353...
Author: Alexandre Julliard julliard@winehq.org Date: Wed May 10 18:20:40 2023 +0200
wow64: Convert MEM_EXTENDED_PARAMETER also for NtMapViewOfSectionEx().
---
dlls/wow64/virtual.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/dlls/wow64/virtual.c b/dlls/wow64/virtual.c index e58ae805914..21ce0905654 100644 --- a/dlls/wow64/virtual.c +++ b/dlls/wow64/virtual.c @@ -375,15 +375,19 @@ NTSTATUS WINAPI wow64_NtMapViewOfSectionEx( UINT *args ) ULONG *size32 = get_ptr( &args ); ULONG alloc = get_ulong( &args ); ULONG protect = get_ulong( &args ); - MEM_EXTENDED_PARAMETER *params = get_ptr( &args ); - ULONG params_count = get_ulong( &args ); + MEM_EXTENDED_PARAMETER32 *params32 = get_ptr( &args ); + ULONG count = get_ulong( &args );
void *addr; SIZE_T size; NTSTATUS status; + MEM_EXTENDED_PARAMETER *params64; + BOOL set_limit = (!*addr32 && process == GetCurrentProcess()); + + if ((status = mem_extended_parameters_32to64( ¶ms64, params32, &count, set_limit ))) return status;
- status = NtMapViewOfSectionEx( handle, process, addr_32to64( &addr, addr32 ), offset, size_32to64( &size, size32 ), alloc, - protect, params, params_count ); + status = NtMapViewOfSectionEx( handle, process, addr_32to64( &addr, addr32 ), offset, + size_32to64( &size, size32 ), alloc, protect, params64, count ); if (NT_SUCCESS(status)) { SECTION_IMAGE_INFORMATION info;