kernel32/tests: Add a test for critical section DebugInfo initial value.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
4385a3ecb6
commit
bf174815ba
|
@ -2636,6 +2636,26 @@ static void test_apc_deadlock(void)
|
|||
CloseHandle(pi.hProcess);
|
||||
}
|
||||
|
||||
static void test_crit_section(void)
|
||||
{
|
||||
CRITICAL_SECTION cs;
|
||||
BOOL ret;
|
||||
|
||||
/* Win8+ does not initialize debug info, one has to use RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO
|
||||
to override that. */
|
||||
memset(&cs, 0, sizeof(cs));
|
||||
InitializeCriticalSection(&cs);
|
||||
ok(cs.DebugInfo != NULL, "Unexpected debug info pointer %p.\n", cs.DebugInfo);
|
||||
DeleteCriticalSection(&cs);
|
||||
|
||||
memset(&cs, 0, sizeof(cs));
|
||||
ret = InitializeCriticalSectionEx(&cs, 0, CRITICAL_SECTION_NO_DEBUG_INFO);
|
||||
ok(ret, "Failed to initialize critical section.\n");
|
||||
todo_wine
|
||||
ok(cs.DebugInfo == (void *)(ULONG_PTR)-1, "Unexpected debug info pointer %p.\n", cs.DebugInfo);
|
||||
DeleteCriticalSection(&cs);
|
||||
}
|
||||
|
||||
START_TEST(sync)
|
||||
{
|
||||
char **argv;
|
||||
|
@ -2694,4 +2714,5 @@ START_TEST(sync)
|
|||
test_srwlock_example();
|
||||
test_alertable_wait();
|
||||
test_apc_deadlock();
|
||||
test_crit_section();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue