From 688493bb3ceef292a7a607decb008ed0d63f8e1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20D=C3=B6singer?= Date: Fri, 21 Apr 2017 17:01:52 +0200 Subject: [PATCH] d3d8/tests: Accept alpha channel differences in shadow_test. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Stefan Dösinger Signed-off-by: Henri Verbeet Signed-off-by: Alexandre Julliard --- dlls/d3d8/tests/visual.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/dlls/d3d8/tests/visual.c b/dlls/d3d8/tests/visual.c index 4f0c3975bc6..14eb6eab5a7 100644 --- a/dlls/d3d8/tests/visual.c +++ b/dlls/d3d8/tests/visual.c @@ -4069,7 +4069,11 @@ static void shadow_test(void) for (j = 0; j < sizeof(expected_colors) / sizeof(*expected_colors); ++j) { D3DCOLOR color = get_readback_color(&rb, expected_colors[j].x, expected_colors[j].y); - ok(color_match(color, expected_colors[j].color, 0), + /* Geforce 7 on Windows returns 1.0 in alpha when the depth format is D24S8 or D24X8, + * whereas other GPUs (all AMD, newer Nvidia) return the same value they return in .rgb. + * Accept alpha mismatches as broken but make sure to check the color channels. */ + ok(color_match(color, expected_colors[j].color, 0) + || broken(color_match(color & 0x00ffffff, expected_colors[j].color & 0x00ffffff, 0)), "Expected color 0x%08x at (%u, %u) for format %s, got 0x%08x.\n", expected_colors[j].color, expected_colors[j].x, expected_colors[j].y, formats[i].name, color);