Module: wine Branch: master Commit: b22ee99fe948a30dc0c0aad5f3df711cffaa9596 URL: http://source.winehq.org/git/wine.git/?a=commit;h=b22ee99fe948a30dc0c0aad5f3...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Thu Feb 13 10:14:18 2014 +0100
d3d8/tests: Accept some broken results in test_scalar_instructions().
---
dlls/d3d8/tests/visual.c | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/dlls/d3d8/tests/visual.c b/dlls/d3d8/tests/visual.c index 7a7e11a..616dd41 100644 --- a/dlls/d3d8/tests/visual.c +++ b/dlls/d3d8/tests/visual.c @@ -1767,15 +1767,18 @@ static void test_scalar_instructions(IDirect3DDevice8 *device) const char *name; const DWORD *byte_code; D3DCOLOR color; + /* Some drivers, including Intel HD4000 10.18.10.3345 and VMware SVGA + * 3D 7.14.1.5025, use the .x component instead of the .w one. */ + D3DCOLOR broken_color; } test_data[] = { - {"rcp_test", rcp_test, D3DCOLOR_ARGB(0x00, 0x80, 0x80, 0x80)}, - {"rsq_test", rsq_test, D3DCOLOR_ARGB(0x00, 0xb4, 0xb4, 0xb4)}, - {"exp_test", exp_test, D3DCOLOR_ARGB(0x00, 0x40, 0x40, 0x40)}, - {"expp_test", expp_test, D3DCOLOR_ARGB(0x00, 0x40, 0x40, 0x40)}, - {"log_test", log_test, D3DCOLOR_ARGB(0x00, 0xff, 0xff, 0xff)}, - {"logp_test", logp_test, D3DCOLOR_ARGB(0x00, 0xff, 0xff, 0xff)}, + {"rcp_test", rcp_test, D3DCOLOR_ARGB(0x00, 0x80, 0x80, 0x80), D3DCOLOR_ARGB(0x00, 0xff, 0xff, 0xff)}, + {"rsq_test", rsq_test, D3DCOLOR_ARGB(0x00, 0xb4, 0xb4, 0xb4), D3DCOLOR_ARGB(0x00, 0xff, 0xff, 0xff)}, + {"exp_test", exp_test, D3DCOLOR_ARGB(0x00, 0x40, 0x40, 0x40), D3DCOLOR_ARGB(0x00, 0xd6, 0xd6, 0xd6)}, + {"expp_test", expp_test, D3DCOLOR_ARGB(0x00, 0x40, 0x40, 0x40), D3DCOLOR_ARGB(0x00, 0xff, 0xff, 0xff)}, + {"log_test", log_test, D3DCOLOR_ARGB(0x00, 0xff, 0xff, 0xff), D3DCOLOR_ARGB(0x00, 0x00, 0x00, 0x00)}, + {"logp_test", logp_test, D3DCOLOR_ARGB(0x00, 0xff, 0xff, 0xff), D3DCOLOR_ARGB(0x00, 0x00, 0xff, 0x00)}, }; unsigned int i; DWORD shader; @@ -1800,7 +1803,8 @@ static void test_scalar_instructions(IDirect3DDevice8 *device) ok(SUCCEEDED(hr), "%s: Failed to end scene, hr %#x.\n", test_data[i].name, hr);
color = getPixelColor(device, 320, 240); - ok(color_match(color, test_data[i].color, 4), "%s: Got unexpected color 0x%08x, expected 0x%08x.\n", + ok(color_match(color, test_data[i].color, 4) || broken(color_match(color, test_data[i].broken_color, 4)), + "%s: Got unexpected color 0x%08x, expected 0x%08x.\n", test_data[i].name, color, test_data[i].color);
hr = IDirect3DDevice8_Present(device, NULL, NULL, NULL, NULL);