Nikolay Sivov : dxgi: Support IID_IDXGIDevice in dxgi_adapter_CheckInterfaceSupport().

Alexandre Julliard julliard at winehq.org
Mon Oct 22 15:38:44 CDT 2018


Module: wine
Branch: master
Commit: 2ea796ad71d81503b5e84bc248080857f06d0962
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=2ea796ad71d81503b5e84bc248080857f06d0962

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Mon Oct 22 00:40:40 2018 +0300

dxgi: Support IID_IDXGIDevice in dxgi_adapter_CheckInterfaceSupport().

Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 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 4bc57a2..0079759 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 f2bc9ed..bd5c574 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);




More information about the wine-cvs mailing list