Signed-off-by: Nikolay Sivov nsivov@codeweavers.com --- dlls/dxgi/adapter.c | 3 ++- dlls/dxgi/tests/dxgi.c | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/dlls/dxgi/adapter.c b/dlls/dxgi/adapter.c index 4bc57a244d..0079759568 100644 --- a/dlls/dxgi/adapter.c +++ b/dlls/dxgi/adapter.c @@ -218,7 +218,8 @@ static HRESULT STDMETHODCALLTYPE dxgi_adapter_CheckInterfaceSupport(IWineDXGIAda TRACE("iface %p, guid %s, umd_version %p.\n", iface, debugstr_guid(guid), umd_version);
/* This method works only for D3D10 interfaces. */ - if (!(IsEqualGUID(guid, &IID_ID3D10Device) + if (!(IsEqualGUID(guid, &IID_IDXGIDevice) + || IsEqualGUID(guid, &IID_ID3D10Device) || IsEqualGUID(guid, &IID_ID3D10Device1))) { WARN("Returning DXGI_ERROR_UNSUPPORTED for %s.\n", debugstr_guid(guid)); diff --git a/dlls/dxgi/tests/dxgi.c b/dlls/dxgi/tests/dxgi.c index f2bc9ed229..bd5c574ec8 100644 --- a/dlls/dxgi/tests/dxgi.c +++ b/dlls/dxgi/tests/dxgi.c @@ -838,6 +838,10 @@ static void test_check_interface_support(void) hr = IDXGIDevice_GetAdapter(device, &adapter); ok(SUCCEEDED(hr), "GetAdapter failed, hr %#x.\n", hr);
+ hr = IDXGIAdapter_CheckInterfaceSupport(adapter, &IID_IDXGIDevice, NULL); + ok(hr == S_OK, "Got unexpected hr %#x.\n", hr); + hr = IDXGIAdapter_CheckInterfaceSupport(adapter, &IID_IDXGIDevice, &driver_version); + ok(hr == S_OK, "Got unexpected hr %#x.\n", hr); hr = IDXGIAdapter_CheckInterfaceSupport(adapter, &IID_ID3D10Device, NULL); ok(hr == S_OK, "Got unexpected hr %#x.\n", hr); hr = IDXGIAdapter_CheckInterfaceSupport(adapter, &IID_ID3D10Device, &driver_version);