Zebediah Figura (@zfigura) commented about dlls/d3d11/tests/d3d11.c:
- {
handle = NULL;
tex = NULL;
res = NULL;
res1 = NULL;
desc.MiscFlags = tests[test];
nthandle = desc.MiscFlags & D3D11_RESOURCE_MISC_SHARED_NTHANDLE;
winetest_push_context("MiscFlags %#x, nthandle %d", tests[test], nthandle);
hr = ID3D11Device_CreateTexture2D(device, &desc, NULL, &tex);
if (desc.MiscFlags && (!(desc.MiscFlags & ~D3D11_RESOURCE_MISC_SHARED_NTHANDLE)
|| (desc.MiscFlags & (D3D11_RESOURCE_MISC_SHARED | D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX))
== (D3D11_RESOURCE_MISC_SHARED | D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX)
|| feature_level < D3D_FEATURE_LEVEL_10_0))
todo_wine ok(hr == E_INVALIDARG, "got %#lx.\n", hr);
This isn't the easiest thing to read. Maybe encode this information into the tests array, like:
``` static const struct { unsigned int misc_flags; HRESULT hr; bool broken; } tests[] = ... ```