Signed-off-by: Stefan Dösinger stefan@codeweavers.com
---
Just like b7eeab900f38ae67e7a63c0f46c61201a3753215 in d3d9. --- dlls/d3d8/tests/visual.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/dlls/d3d8/tests/visual.c b/dlls/d3d8/tests/visual.c index 3c61426e17f..1f188340fc6 100644 --- a/dlls/d3d8/tests/visual.c +++ b/dlls/d3d8/tests/visual.c @@ -6767,7 +6767,7 @@ static void test_updatetexture(void) UINT dst_width, dst_height; UINT src_levels, dst_levels; D3DFORMAT src_format, dst_format; - BOOL broken; + BOOL broken_result, broken_updatetex; } tests[] = { @@ -6785,7 +6785,8 @@ static void test_updatetexture(void) * one or something like that). */ /* {8, 8, 7, 7, 4, 2, D3DFMT_A8R8G8B8, D3DFMT_A8R8G8B8, FALSE}, */ {8, 8, 8, 8, 1, 4, D3DFMT_A8R8G8B8, D3DFMT_A8R8G8B8, FALSE}, /* 8 */ - {4, 4, 8, 8, 1, 1, D3DFMT_A8R8G8B8, D3DFMT_A8R8G8B8, FALSE}, /* 9 */ + /* For this one UpdateTexture() returns failure on WARP on > Win 10 1709. */ + {4, 4, 8, 8, 1, 1, D3DFMT_A8R8G8B8, D3DFMT_A8R8G8B8, FALSE, TRUE}, /* 9 */ /* This one causes weird behavior on Windows (it probably writes out * of the texture memory). */ /* {8, 8, 4, 4, 1, 1, D3DFMT_A8R8G8B8, D3DFMT_A8R8G8B8, FALSE}, */ @@ -7012,7 +7013,8 @@ static void test_updatetexture(void) hr = IDirect3DDevice8_UpdateTexture(device, src, dst); if (FAILED(hr)) { - todo_wine ok(SUCCEEDED(hr), "Failed to update texture, hr %#x, case %u, %u.\n", hr, t, i); + todo_wine ok(SUCCEEDED(hr) || broken(tests[i].broken_updatetex), + "Failed to update texture, hr %#x, case %u, %u.\n", hr, t, i); IDirect3DBaseTexture8_Release(src); IDirect3DBaseTexture8_Release(dst); continue; @@ -7036,7 +7038,7 @@ static void test_updatetexture(void) ok(SUCCEEDED(hr), "Failed to end scene, hr %#x.\n", hr);
color = getPixelColor(device, 320, 240); - ok (color_match(color, 0x007f7f00, 3) || broken(tests[i].broken) + ok (color_match(color, 0x007f7f00, 3) || broken(tests[i].broken_result) || broken(color == 0x00adbeef), /* WARP device often just breaks down. */ "Got unexpected color 0x%08x, case %u, %u.\n", color, t, i); }