From: Jinoh Kang jinoh.kang.kr@gmail.com
--- dlls/ntoskrnl.exe/tests/driver.h | 1 + dlls/ntoskrnl.exe/tests/ntoskrnl.c | 7 ++++--- 2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/dlls/ntoskrnl.exe/tests/driver.h b/dlls/ntoskrnl.exe/tests/driver.h index 34dfdca476c..774908a5c4a 100644 --- a/dlls/ntoskrnl.exe/tests/driver.h +++ b/dlls/ntoskrnl.exe/tests/driver.h @@ -64,6 +64,7 @@ struct main_test_input DWORD process_id; SIZE_T teststr_offset; ULONG64 *modified_value; + ULONG_PTR parameter; };
struct return_status_params diff --git a/dlls/ntoskrnl.exe/tests/ntoskrnl.c b/dlls/ntoskrnl.exe/tests/ntoskrnl.c index ff93cfc98ec..e80b2368352 100644 --- a/dlls/ntoskrnl.exe/tests/ntoskrnl.c +++ b/dlls/ntoskrnl.exe/tests/ntoskrnl.c @@ -392,7 +392,7 @@ static void cat_okfile(void)
static ULONG64 modified_value;
-static void main_test(void) +static void main_test(ULONG_PTR parameter) { struct main_test_input *test_input; DWORD size; @@ -402,6 +402,7 @@ static void main_test(void) test_input->process_id = GetCurrentProcessId(); test_input->teststr_offset = (SIZE_T)((BYTE *)&teststr - (BYTE *)NtCurrentTeb()->Peb->ImageBaseAddress); test_input->modified_value = &modified_value; + test_input->parameter = parameter; modified_value = 0;
res = DeviceIoControl(device, IOCTL_WINETEST_MAIN_TEST, test_input, sizeof(*test_input), NULL, 0, &size, NULL); @@ -1248,7 +1249,7 @@ static void test_driver_netio(struct testsign_context *ctx) ok(device != INVALID_HANDLE_VALUE, "failed to open device: %lu\n", GetLastError());
hthread = CreateThread(NULL, 0, wsk_test_thread, NULL, 0, NULL); - main_test(); + main_test(0); WaitForSingleObject(hthread, INFINITE);
CloseHandle(device); @@ -1933,7 +1934,7 @@ START_TEST(ntoskrnl)
test_basic_ioctl();
- main_test(); + main_test(0); todo_wine ok(modified_value == 0xdeadbeeffeedcafe, "Got unexpected value %#I64x.\n", modified_value);
test_overlapped();