Matteo Bruni (@Mystral) commented about dlls/d3d9/tests/d3d9ex.c:
+ memset(&override_list, 0, sizeof(override_list)); + override_list.Enable9On12 = FALSE; + override_list.pD3D12Device = NULL; + override_list.NumQueues = 0; + override_list.NodeMask = 0; + + for (int i = 0; i < MAX_D3D9ON12_QUEUES; i++) + override_list.ppD3D12Queues[i] = NULL; + + d3d9 = pDirect3DCreate9On12(D3D_SDK_VERSION, &override_list, override_entries); + ok(d3d9 != NULL, "got null d3d9 object\n"); + + hr = IDirect3D9_QueryInterface(d3d9, &IID_IDirect3DDevice9On12, (void **) &d3d9on12); + ok(hr == E_NOINTERFACE, "Got hr %#lx.\n", hr); + ok(d3d9on12 == NULL, "QueryInterface returned interface %p, expected NULL\n", d3d9on12); + if(d3d9on12) IDirect3DDevice9On12_Release(d3d9on12); We don't want the `if` since we expect NULL (i.e. crashing on unexpected results is actually preferred).
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/4915#note_58812