[PATCH 05/10] d3d11/tests: Check that private data is shared between d3d10 and d3d11 interfaces.
Józef Kucia
jkucia at codeweavers.com
Mon Oct 5 18:49:27 CDT 2015
Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
dlls/d3d11/tests/d3d11.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/dlls/d3d11/tests/d3d11.c b/dlls/d3d11/tests/d3d11.c
index 5b48fe0..cecac07 100644
--- a/dlls/d3d11/tests/d3d11.c
+++ b/dlls/d3d11/tests/d3d11.c
@@ -1637,6 +1637,7 @@ static void test_private_data(void)
{
ULONG refcount, expected_refcount;
D3D11_TEXTURE2D_DESC texture_desc;
+ ID3D10Texture2D *d3d10_texture;
ID3D11Device *test_object;
ID3D11Texture2D *texture;
IDXGIDevice *dxgi_device;
@@ -1785,6 +1786,20 @@ static void test_private_data(void)
ok(ptr == (IUnknown *)test_object, "Got unexpected ptr %p, expected %p.\n", ptr, test_object);
IUnknown_Release(ptr);
+ hr = ID3D11Texture2D_QueryInterface(texture, &IID_ID3D10Texture2D, (void **)&d3d10_texture);
+ ok(SUCCEEDED(hr) || broken(hr == E_NOINTERFACE) /* Not available on all Windows versions. */,
+ "Texture should implement ID3D10Texture2D.\n");
+ if (SUCCEEDED(hr))
+ {
+ ptr = NULL;
+ size = sizeof(ptr);
+ hr = ID3D10Texture2D_GetPrivateData(d3d10_texture, &test_guid, &size, &ptr);
+ ok(hr == S_OK, "Got unexpected hr %#x.\n", hr);
+ ok(ptr == (IUnknown *)test_object, "Got unexpected ptr %p, expected %p.\n", ptr, test_object);
+ IUnknown_Release(ptr);
+ ID3D10Texture2D_Release(d3d10_texture);
+ }
+
IDXGISurface_Release(surface);
ID3D11Texture2D_Release(texture);
refcount = ID3D11Device_Release(device);
--
2.4.9
More information about the wine-patches
mailing list