Module: wine Branch: master Commit: 2303b5a896312670e8c37c89abcfbb36c5465149 URL: http://source.winehq.org/git/wine.git/?a=commit;h=2303b5a896312670e8c37c89ab...
Author: Stefan Dösinger stefan@codeweavers.com Date: Fri Apr 21 17:01:51 2017 +0200
d3d9/tests: Accept alpha channel differences in shadow_test.
Signed-off-by: Stefan Dösinger stefan@codeweavers.com Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/d3d9/tests/visual.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/dlls/d3d9/tests/visual.c b/dlls/d3d9/tests/visual.c index db29c3f..f9b147e 100644 --- a/dlls/d3d9/tests/visual.c +++ b/dlls/d3d9/tests/visual.c @@ -14670,7 +14670,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);