d3d9/tests: CheckDeviceType() may also return D3DERR_NOTAVAILABLE for D3DFMT_X1R5G5B5.

Spice's QXL driver claims to support X1R5G5B5 but then returns
NOTAVAILABLE just like the Windows Standard VGA driver does for R5G6B5
and X8R8G8B8.
This commit is contained in:
Francois Gouget 2013-02-21 16:22:42 +01:00 committed by Alexandre Julliard
parent 164ddbca8c
commit ce34094f5f

View File

@ -2325,7 +2325,7 @@ static void test_display_formats(void)
if(r5g6b5_format_list[i].shouldPass)
ok(hr == D3D_OK ||
broken(hr == D3DERR_NOTAVAILABLE),
broken(hr == D3DERR_NOTAVAILABLE) /* Windows VGA driver */,
"format %d %d didn't pass with hr=%#08x\n", r5g6b5_format_list[i].DisplayFormat, r5g6b5_format_list[i].BackBufferFormat, hr);
else
ok(hr != D3D_OK, "format %d %d didn't pass while it was expected to\n", r5g6b5_format_list[i].DisplayFormat, r5g6b5_format_list[i].BackBufferFormat);
@ -2342,7 +2342,9 @@ static void test_display_formats(void)
hr = IDirect3D9_CheckDeviceType(d3d9, Adapter, DeviceType, x1r5g5b5_format_list[i].DisplayFormat, x1r5g5b5_format_list[i].BackBufferFormat, FALSE);
if(x1r5g5b5_format_list[i].shouldPass)
ok(hr == D3D_OK, "format %d %d didn't pass with hr=%#08x\n", x1r5g5b5_format_list[i].DisplayFormat, x1r5g5b5_format_list[i].BackBufferFormat, hr);
ok(hr == D3D_OK ||
broken(hr == D3DERR_NOTAVAILABLE) /* Spice QXL driver */,
"format %d %d didn't pass with hr=%#08x\n", x1r5g5b5_format_list[i].DisplayFormat, x1r5g5b5_format_list[i].BackBufferFormat, hr);
else
ok(hr != D3D_OK, "format %d %d didn't pass while it was expected to\n", x1r5g5b5_format_list[i].DisplayFormat, x1r5g5b5_format_list[i].BackBufferFormat);
}
@ -2356,10 +2358,11 @@ static void test_display_formats(void)
for(i=0; x8r8g8b8_format_list[i].DisplayFormat != 0; i++)
{
hr = IDirect3D9_CheckDeviceType(d3d9, Adapter, DeviceType, x8r8g8b8_format_list[i].DisplayFormat, x8r8g8b8_format_list[i].BackBufferFormat, FALSE);
trace("CheckDeviceType(%d %d) = %08x shouldPass = %d\n", x8r8g8b8_format_list[i].DisplayFormat, x8r8g8b8_format_list[i].BackBufferFormat, hr, x8r8g8b8_format_list[i].shouldPass);
if(x8r8g8b8_format_list[i].shouldPass)
ok(hr == D3D_OK ||
broken(hr == D3DERR_NOTAVAILABLE),
broken(hr == D3DERR_NOTAVAILABLE) /* Windows VGA driver */,
"format %d %d didn't pass with hr=%#08x\n", x8r8g8b8_format_list[i].DisplayFormat, x8r8g8b8_format_list[i].BackBufferFormat, hr);
else
ok(hr != D3D_OK, "format %d %d didn't pass while it was expected to\n", x8r8g8b8_format_list[i].DisplayFormat, x8r8g8b8_format_list[i].BackBufferFormat);