[PATCH v2 1/8] kernel32/tests: Fix NtMapViewOfSection tests results for w1064v1809
Huw Davies
huw at codeweavers.com
Mon Jun 17 04:39:14 CDT 2019
On Fri, Jun 14, 2019 at 03:11:10PM +0200, Rémi Bernon wrote:
> Signed-off-by: Rémi Bernon <rbernon at codeweavers.com>
> ---
> dlls/kernel32/tests/virtual.c | 23 +++++++++++++++--------
> 1 file changed, 15 insertions(+), 8 deletions(-)
>
> diff --git a/dlls/kernel32/tests/virtual.c b/dlls/kernel32/tests/virtual.c
> index 0b718606d0e..47e61566c9c 100644
> --- a/dlls/kernel32/tests/virtual.c
> +++ b/dlls/kernel32/tests/virtual.c
> @@ -1265,8 +1265,8 @@ static void test_NtMapViewOfSection(void)
> size = 0;
> offset.QuadPart = 0;
> status = pNtMapViewOfSection( mapping, hProcess, &ptr2, 12, 0, &offset, &size, 1, 0, PAGE_READWRITE );
So this is trying to map a view into the lowest 1MB of the addr space,
wich is unlikely to succeed. Let's change the '12' to a '1' in this
patch since that's what you did in [4/8] anyway.
> - todo_wine
> - ok( status == STATUS_NO_MEMORY, "NtMapViewOfSection returned %x\n", status );
> + ok( status == STATUS_SUCCESS || status == STATUS_NO_MEMORY,
> + "NtMapViewOfSection returned %x\n", status );
> if (status == STATUS_SUCCESS)
> {
> status = pNtUnmapViewOfSection( hProcess, ptr2 );
> @@ -1288,7 +1288,8 @@ static void test_NtMapViewOfSection(void)
> ptr2 = NULL;
> size = 0;
> status = pNtMapViewOfSection( mapping, hProcess, &ptr2, 22, 0, &offset, &size, 1, 0, PAGE_READWRITE );
> - ok( status == STATUS_INVALID_PARAMETER_4, "NtMapViewOfSection returned %x\n", status );
> + ok( status == STATUS_INVALID_PARAMETER_4 || status == STATUS_INVALID_PARAMETER,
> + "NtMapViewOfSection returned %x\n", status );
> if (status == STATUS_SUCCESS)
> {
> status = pNtUnmapViewOfSection( hProcess, ptr2 );
> @@ -1328,25 +1329,30 @@ static void test_NtMapViewOfSection(void)
> size = 0;
> offset.QuadPart = 0;
> status = pNtMapViewOfSection( mapping, hProcess, &ptr2, 12, 0, &offset, &size, 1, 0, PAGE_READWRITE );
Also, changing this and the other non-zero zero_bits below to '1'
would improve the tests. i.e. it's something that one would expect to
succeed if ptr2 was set to NULL.
> - ok( status == STATUS_INVALID_PARAMETER_4, "NtMapViewOfSection returned %x\n", status );
> + ok( status == STATUS_INVALID_PARAMETER_4 || status == STATUS_INVALID_PARAMETER ||
> + broken(STATUS_MAPPED_ALIGNMENT) /* w1064v1809 inconsistently returns STATUS_MAPPED_ALIGNMENT or STATUS_INVALID_PARAMETER */,
> + "NtMapViewOfSection returned %x\n", status );
>
> ptr2 = (char *)ptr + 0x1000;
> size = 0;
> offset.QuadPart = 0;
> status = pNtMapViewOfSection( mapping, hProcess, &ptr2, 16, 0, &offset, &size, 1, 0, PAGE_READWRITE );
> - ok( status == STATUS_INVALID_PARAMETER_4, "NtMapViewOfSection returned %x\n", status );
> + ok( status == STATUS_INVALID_PARAMETER_4 || status == STATUS_INVALID_PARAMETER,
> + "NtMapViewOfSection returned %x\n", status );
>
> ptr2 = (char *)ptr + 0x1001;
> size = 0;
> offset.QuadPart = 0;
> status = pNtMapViewOfSection( mapping, hProcess, &ptr2, 16, 0, &offset, &size, 1, 0, PAGE_READWRITE );
> - ok( status == STATUS_INVALID_PARAMETER_4, "NtMapViewOfSection returned %x\n", status );
> + ok( status == STATUS_INVALID_PARAMETER_4 || status == STATUS_INVALID_PARAMETER,
> + "NtMapViewOfSection returned %x\n", status );
>
> ptr2 = (char *)ptr + 0x1000;
> size = 0;
> offset.QuadPart = 1;
> status = pNtMapViewOfSection( mapping, hProcess, &ptr2, 16, 0, &offset, &size, 1, 0, PAGE_READWRITE );
> - ok( status == STATUS_INVALID_PARAMETER_4, "NtMapViewOfSection returned %x\n", status );
> + ok( status == STATUS_INVALID_PARAMETER_4 || status == STATUS_INVALID_PARAMETER,
> + "NtMapViewOfSection returned %x\n", status );
>
Huw.
More information about the wine-devel
mailing list