kernel32/tests: Fix a few more errors on Win9x.
This commit is contained in:
parent
9a2fdfd66b
commit
cc49f6ba8b
|
@ -529,21 +529,42 @@ static void test_MapViewOfFile(void)
|
|||
ok(ret, "VirtualQuery failed with error %d\n", GetLastError());
|
||||
ok(info.BaseAddress == ptr, "BaseAddress should have been %p but was %p instead\n", ptr, info.BaseAddress);
|
||||
ok(info.AllocationBase == ptr, "AllocationBase should have been %p but was %p instead\n", ptr, info.AllocationBase);
|
||||
ok(info.AllocationProtect == PAGE_READWRITE, "AllocationProtect should have been PAGE_READWRITE but was 0x%x\n", info.AllocationProtect);
|
||||
ok(info.RegionSize == MAPPING_SIZE, "RegionSize should have been 0x%x but was 0x%x\n", MAPPING_SIZE, (unsigned int)info.RegionSize);
|
||||
ok(info.State == MEM_RESERVE, "State should have been MEM_RESERVE instead of 0x%x\n", info.State);
|
||||
if (info.Type == MEM_PRIVATE) /* win9x is different for uncommitted mappings */
|
||||
{
|
||||
ok(info.AllocationProtect == PAGE_NOACCESS,
|
||||
"AllocationProtect should have been PAGE_NOACCESS but was 0x%x\n", info.AllocationProtect);
|
||||
ok(info.Protect == PAGE_NOACCESS,
|
||||
"Protect should have been PAGE_NOACCESS instead of 0x%x\n", info.Protect);
|
||||
}
|
||||
else
|
||||
{
|
||||
ok(info.AllocationProtect == PAGE_READWRITE,
|
||||
"AllocationProtect should have been PAGE_READWRITE but was 0x%x\n", info.AllocationProtect);
|
||||
ok(info.Protect == 0, "Protect should have been 0 instead of 0x%x\n", info.Protect);
|
||||
ok(info.Type == MEM_MAPPED, "Type should have been MEM_MAPPED instead of 0x%x\n", info.Type);
|
||||
}
|
||||
|
||||
if (ptr != ptr2)
|
||||
{
|
||||
ret = VirtualQuery(ptr2, &info, sizeof(info));
|
||||
ok(ret, "VirtualQuery failed with error %d\n", GetLastError());
|
||||
ok(info.BaseAddress == ptr2, "BaseAddress should have been %p but was %p instead\n", ptr2, info.BaseAddress);
|
||||
ok(info.AllocationBase == ptr2, "AllocationBase should have been %p but was %p instead\n", ptr2, info.AllocationBase);
|
||||
ok(info.AllocationProtect == PAGE_READWRITE, "AllocationProtect should have been PAGE_READWRITE but was 0x%x\n", info.AllocationProtect);
|
||||
ok(info.RegionSize == MAPPING_SIZE, "RegionSize should have been 0x%x but was 0x%x\n", MAPPING_SIZE, (unsigned int)info.RegionSize);
|
||||
ok(info.State == MEM_RESERVE, "State should have been MEM_RESERVE instead of 0x%x\n", info.State);
|
||||
ok(info.Protect == 0, "Protect should have been 0 instead of 0x%x\n", info.Protect);
|
||||
ok(info.Type == MEM_MAPPED, "Type should have been MEM_MAPPED instead of 0x%x\n", info.Type);
|
||||
ok(info.BaseAddress == ptr2,
|
||||
"BaseAddress should have been %p but was %p instead\n", ptr2, info.BaseAddress);
|
||||
ok(info.AllocationBase == ptr2,
|
||||
"AllocationBase should have been %p but was %p instead\n", ptr2, info.AllocationBase);
|
||||
ok(info.AllocationProtect == PAGE_READWRITE,
|
||||
"AllocationProtect should have been PAGE_READWRITE but was 0x%x\n", info.AllocationProtect);
|
||||
ok(info.RegionSize == MAPPING_SIZE,
|
||||
"RegionSize should have been 0x%x but was 0x%x\n", MAPPING_SIZE, (unsigned int)info.RegionSize);
|
||||
ok(info.State == MEM_RESERVE,
|
||||
"State should have been MEM_RESERVE instead of 0x%x\n", info.State);
|
||||
ok(info.Protect == 0,
|
||||
"Protect should have been 0 instead of 0x%x\n", info.Protect);
|
||||
ok(info.Type == MEM_MAPPED,
|
||||
"Type should have been MEM_MAPPED instead of 0x%x\n", info.Type);
|
||||
}
|
||||
|
||||
ptr = VirtualAlloc(ptr, 0x10000, MEM_COMMIT, PAGE_READONLY);
|
||||
ok(ptr != NULL, "VirtualAlloc failed with error %d\n", GetLastError());
|
||||
|
@ -552,27 +573,46 @@ static void test_MapViewOfFile(void)
|
|||
ok(ret, "VirtualQuery failed with error %d\n", GetLastError());
|
||||
ok(info.BaseAddress == ptr, "BaseAddress should have been %p but was %p instead\n", ptr, info.BaseAddress);
|
||||
ok(info.AllocationBase == ptr, "AllocationBase should have been %p but was %p instead\n", ptr, info.AllocationBase);
|
||||
ok(info.AllocationProtect == PAGE_READWRITE, "AllocationProtect should have been PAGE_READWRITE but was 0x%x\n", info.AllocationProtect);
|
||||
ok(info.RegionSize == 0x10000, "RegionSize should have been 0x10000 but was 0x%x\n", (unsigned int)info.RegionSize);
|
||||
ok(info.State == MEM_COMMIT, "State should have been MEM_RESERVE instead of 0x%x\n", info.State);
|
||||
ok(info.Protect == PAGE_READONLY, "Protect should have been 0 instead of 0x%x\n", info.Protect);
|
||||
if (info.Type == MEM_PRIVATE) /* win9x is different for uncommitted mappings */
|
||||
{
|
||||
ok(info.AllocationProtect == PAGE_NOACCESS,
|
||||
"AllocationProtect should have been PAGE_NOACCESS but was 0x%x\n", info.AllocationProtect);
|
||||
}
|
||||
else
|
||||
{
|
||||
ok(info.AllocationProtect == PAGE_READWRITE,
|
||||
"AllocationProtect should have been PAGE_READWRITE but was 0x%x\n", info.AllocationProtect);
|
||||
ok(info.Type == MEM_MAPPED, "Type should have been MEM_MAPPED instead of 0x%x\n", info.Type);
|
||||
}
|
||||
|
||||
/* shows that the VirtualAlloc above affects the mapping, not just the
|
||||
* virtual memory in this process - it also affects all other processes
|
||||
* with a view of the mapping, but that isn't tested here */
|
||||
if (ptr != ptr2)
|
||||
{
|
||||
ret = VirtualQuery(ptr2, &info, sizeof(info));
|
||||
ok(ret, "VirtualQuery failed with error %d\n", GetLastError());
|
||||
ok(info.BaseAddress == ptr2, "BaseAddress should have been %p but was %p instead\n", ptr2, info.BaseAddress);
|
||||
ok(info.AllocationBase == ptr2, "AllocationBase should have been %p but was %p instead\n", ptr2, info.AllocationBase);
|
||||
ok(info.AllocationProtect == PAGE_READWRITE, "AllocationProtect should have been PAGE_READWRITE but was 0x%x\n", info.AllocationProtect);
|
||||
ok(info.RegionSize == 0x10000, "RegionSize should have been 0x10000 but was 0x%x\n", (unsigned int)info.RegionSize);
|
||||
ok(info.State == MEM_COMMIT, "State should have been MEM_RESERVE instead of 0x%x\n", info.State);
|
||||
ok(info.Protect == PAGE_READWRITE, "Protect should have been 0 instead of 0x%x\n", info.Protect);
|
||||
ok(info.BaseAddress == ptr2,
|
||||
"BaseAddress should have been %p but was %p instead\n", ptr2, info.BaseAddress);
|
||||
ok(info.AllocationBase == ptr2,
|
||||
"AllocationBase should have been %p but was %p instead\n", ptr2, info.AllocationBase);
|
||||
ok(info.AllocationProtect == PAGE_READWRITE,
|
||||
"AllocationProtect should have been PAGE_READWRITE but was 0x%x\n", info.AllocationProtect);
|
||||
ok(info.RegionSize == 0x10000,
|
||||
"RegionSize should have been 0x10000 but was 0x%x\n", (unsigned int)info.RegionSize);
|
||||
ok(info.State == MEM_COMMIT,
|
||||
"State should have been MEM_RESERVE instead of 0x%x\n", info.State);
|
||||
ok(info.Protect == PAGE_READWRITE,
|
||||
"Protect should have been 0 instead of 0x%x\n", info.Protect);
|
||||
ok(info.Type == MEM_MAPPED, "Type should have been MEM_MAPPED instead of 0x%x\n", info.Type);
|
||||
}
|
||||
|
||||
ret = VirtualFree( ptr, 0x10000, MEM_DECOMMIT );
|
||||
ok( !ret, "VirtualFree succeeded\n" );
|
||||
ok( !ret || broken(ret) /* win9x */, "VirtualFree succeeded\n" );
|
||||
if (!ret)
|
||||
ok( GetLastError() == ERROR_INVALID_PARAMETER, "VirtualFree failed with %u\n", GetLastError() );
|
||||
|
||||
ret = UnmapViewOfFile(ptr2);
|
||||
|
|
Loading…
Reference in New Issue