ntdll/tests: Fix some wow64 test failures on Windows.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
1887df5cd8
commit
311c0e91c0
|
@ -874,7 +874,7 @@ static void test_nt_wow64(void)
|
|||
ok( status == STATUS_PARTIAL_COPY || broken( status == STATUS_ACCESS_VIOLATION ),
|
||||
"NtWow64WriteVirtualMemory64 failed %x\n", status );
|
||||
todo_wine
|
||||
ok( !res, "wrong size %s\n", wine_dbgstr_longlong(res) );
|
||||
ok( !res || broken(res) /* win10 1709 */, "wrong size %s\n", wine_dbgstr_longlong(res) );
|
||||
}
|
||||
ptr = 0x9876543210ull;
|
||||
status = pNtWow64AllocateVirtualMemory64( process, &ptr, 0, &size,
|
||||
|
@ -882,7 +882,8 @@ static void test_nt_wow64(void)
|
|||
todo_wine
|
||||
ok( !status || broken( status == STATUS_CONFLICTING_ADDRESSES ),
|
||||
"NtWow64AllocateVirtualMemory64 failed %x\n", status );
|
||||
if (!status) ok( ptr == 0x9876540000ull, "wrong ptr %s\n", wine_dbgstr_longlong(ptr) );
|
||||
if (!status) ok( ptr == 0x9876540000ull || broken(ptr == 0x76540000), /* win 8.1 */
|
||||
"wrong ptr %s\n", wine_dbgstr_longlong(ptr) );
|
||||
ptr = 0;
|
||||
status = pNtWow64AllocateVirtualMemory64( GetCurrentProcess(), &ptr, 0, &size,
|
||||
MEM_RESERVE | MEM_COMMIT, PAGE_READONLY );
|
||||
|
@ -1027,15 +1028,27 @@ static void test_init_block(void)
|
|||
CHECK_FUNC( init_block[5], "KiUserExceptionDispatcher" );
|
||||
CHECK_FUNC( init_block[6], "KiUserApcDispatcher" );
|
||||
CHECK_FUNC( init_block[7], "KiUserCallbackDispatcher" );
|
||||
CHECK_FUNC( init_block[8], "ExpInterlockedPopEntrySListFault" );
|
||||
CHECK_FUNC( init_block[9], "ExpInterlockedPopEntrySListResume" );
|
||||
CHECK_FUNC( init_block[10], "ExpInterlockedPopEntrySListEnd" );
|
||||
CHECK_FUNC( init_block[11], "RtlUserThreadStart" );
|
||||
CHECK_FUNC( init_block[12], "RtlpQueryProcessDebugInformationRemote" );
|
||||
ok( init_block[13] == (ULONG_PTR)ntdll, "got %p for ntdll %p\n",
|
||||
(void *)(ULONG_PTR)init_block[13], ntdll );
|
||||
CHECK_FUNC( init_block[14], "LdrSystemDllInitBlock" );
|
||||
size = 15 * sizeof(*init_block);
|
||||
if (GetProcAddress( ntdll, "ExpInterlockedPopEntrySListFault" ))
|
||||
{
|
||||
CHECK_FUNC( init_block[8], "ExpInterlockedPopEntrySListFault" );
|
||||
CHECK_FUNC( init_block[9], "ExpInterlockedPopEntrySListResume" );
|
||||
CHECK_FUNC( init_block[10], "ExpInterlockedPopEntrySListEnd" );
|
||||
CHECK_FUNC( init_block[11], "RtlUserThreadStart" );
|
||||
CHECK_FUNC( init_block[12], "RtlpQueryProcessDebugInformationRemote" );
|
||||
ok( init_block[13] == (ULONG_PTR)ntdll, "got %p for ntdll %p\n",
|
||||
(void *)(ULONG_PTR)init_block[13], ntdll );
|
||||
CHECK_FUNC( init_block[14], "LdrSystemDllInitBlock" );
|
||||
size = 15 * sizeof(*init_block);
|
||||
}
|
||||
else /* win10 1607 */
|
||||
{
|
||||
CHECK_FUNC( init_block[8], "RtlUserThreadStart" );
|
||||
CHECK_FUNC( init_block[9], "RtlpQueryProcessDebugInformationRemote" );
|
||||
ok( init_block[10] == (ULONG_PTR)ntdll, "got %p for ntdll %p\n",
|
||||
(void *)(ULONG_PTR)init_block[10], ntdll );
|
||||
CHECK_FUNC( init_block[11], "LdrSystemDllInitBlock" );
|
||||
size = 12 * sizeof(*init_block);
|
||||
}
|
||||
break;
|
||||
case 0xe0: /* win10 1809 */
|
||||
case 0xf0: /* win10 2004 */
|
||||
|
|
Loading…
Reference in New Issue