Commit 18e2d36d authored by Stefan Dösinger's avatar Stefan Dösinger Committed by Alexandre Julliard

d3d8/tests: Accept a broken Windows 10 20H? result.

parent 080b2c86
......@@ -459,15 +459,22 @@ static void lighting_test(void)
const D3DMATRIX *world_matrix;
const void *quad;
unsigned int size;
DWORD expected;
DWORD expected, broken;
const char *message;
}
tests[] =
{
{&mat, nquad, sizeof(nquad[0]), 0x000000ff, "Lit quad with light"},
{&mat_singular, nquad, sizeof(nquad[0]), 0x000000ff, "Lit quad with singular world matrix"},
{&mat_transf, rotatedquad, sizeof(rotatedquad[0]), 0x000000ff, "Lit quad with transformation matrix"},
{&mat_nonaffine, translatedquad, sizeof(translatedquad[0]), 0x00000000, "Lit quad with non-affine matrix"},
{&mat, nquad, sizeof(nquad[0]), 0x000000ff, 0xdeadbeef,
"Lit quad with light"},
/* Starting around Win10 20H? this test returns 0x00000000, but only
* in d3d8. In ddraw and d3d9 it works like in older windows versions.
* The behavior is GPU independent. */
{&mat_singular, nquad, sizeof(nquad[0]), 0x000000ff, 0x00000000,
"Lit quad with singular world matrix"},
{&mat_transf, rotatedquad, sizeof(rotatedquad[0]), 0x000000ff, 0xdeadbeef,
"Lit quad with transformation matrix"},
{&mat_nonaffine, translatedquad, sizeof(translatedquad[0]), 0x00000000, 0xdeadbeef,
"Lit quad with non-affine matrix"},
};
window = create_window();
......@@ -569,7 +576,8 @@ static void lighting_test(void)
ok(SUCCEEDED(hr), "Failed to end scene, hr %#x.\n", hr);
color = getPixelColor(device, 320, 240);
ok(color == tests[i].expected, "%s has color 0x%08x.\n", tests[i].message, color);
ok(color == tests[i].expected || broken(color == tests[i].broken),
"%s has color 0x%08x.\n", tests[i].message, color);
}
refcount = IDirect3DDevice8_Release(device);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment