Module: wine
Branch: master
Commit: ea8ba70ad4749152831f447b932938f99bc26754
URL: http://source.winehq.org/git/wine.git/?a=commit;h=ea8ba70ad4749152831f447b9…
Author: Stefan Dösinger <stefan(a)codeweavers.com>
Date: Mon Apr 17 22:14:56 2017 +0200
d3d9/tests: Accept another stale value in test_vshader_input.
Signed-off-by: Stefan Dösinger <stefan(a)codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard(a)winehq.org>
---
dlls/d3d9/tests/visual.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/dlls/d3d9/tests/visual.c b/dlls/d3d9/tests/visual.c
index f8860b7..6b5a576 100644
--- a/dlls/d3d9/tests/visual.c
+++ b/dlls/d3d9/tests/visual.c
@@ -8090,8 +8090,14 @@ static void test_vshader_input(void)
hr = IDirect3DDevice9_EndScene(device);
ok(SUCCEEDED(hr), "Failed to end scene, hr %#x.\n", hr);
+ /* WARP and r500 return a color from a previous draw. In case of WARP it is the last draw, which happens to
+ * be the one with quad4_color above. AMD's r500 uses the last D3DCOLOR attribute, which is the one from
+ * quad3_color.
+ *
+ * Newer AMD cards and Nvidia return zero. */
color = getPixelColor(device, 160, 360);
- ok(color_match(color, 0x00000000, 1) || broken(warp),
+ ok(color_match(color, 0x00000000, 1) || broken(color_match(color, 0x00ff8040, 1))
+ || broken(color_match(color, 0x00ffff00, 1) && warp),
"Got unexpected color 0x%08x for no color attribute test.\n", color);
IDirect3DDevice9_SetVertexShader(device, NULL);