gdi32/tests: Avoid a D3DKMTOpenAdapterFromHdc() crash on Windows 10 >= 2004.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Francois Gouget 2020-11-09 17:59:45 +01:00 committed by Alexandre Julliard
parent 34155d0998
commit dd51cd8d00
1 changed files with 9 additions and 4 deletions

View File

@ -105,18 +105,23 @@ static void test_D3DKMTOpenAdapterFromHdc(void)
HDC hdc;
DWORD i;
if (!pD3DKMTOpenAdapterFromHdc || pD3DKMTOpenAdapterFromHdc(NULL) == STATUS_PROCEDURE_NOT_FOUND)
if (!pD3DKMTOpenAdapterFromHdc)
{
win_skip("D3DKMTOpenAdapterFromHdc() is unavailable.\n");
win_skip("D3DKMTOpenAdapterFromHdc() is missing.\n");
return;
}
/* Invalid parameters */
status = pD3DKMTOpenAdapterFromHdc(NULL);
todo_wine ok(status == STATUS_INVALID_PARAMETER, "Got unexpected return code %#x.\n", status);
/* Passing a NULL pointer crashes on Windows 10 >= 2004 */
if (0) status = pD3DKMTOpenAdapterFromHdc(NULL);
memset(&open_adapter_hdc_desc, 0, sizeof(open_adapter_hdc_desc));
status = pD3DKMTOpenAdapterFromHdc(&open_adapter_hdc_desc);
if (status == STATUS_PROCEDURE_NOT_FOUND)
{
win_skip("D3DKMTOpenAdapterFromHdc() is not supported.\n");
return;
}
todo_wine ok(status == STATUS_INVALID_PARAMETER, "Got unexpected return code %#x.\n", status);
/* Open adapter */