From 0c815a486b16950000c2202f76ea9374a8b04d76 Mon Sep 17 00:00:00 2001 From: Paul Gofman Date: Fri, 27 Sep 2019 14:02:24 +0300 Subject: [PATCH] Updated d3d11-Deferred_Context patchset. Fix test failures. --- ...-Add-stub-deferred-rendering-context.patch | 39 +++++++++++++++---- patches/patchinstall.sh | 4 +- 2 files changed, 33 insertions(+), 10 deletions(-) diff --git a/patches/d3d11-Deferred_Context/0001-d3d11-Add-stub-deferred-rendering-context.patch b/patches/d3d11-Deferred_Context/0001-d3d11-Add-stub-deferred-rendering-context.patch index 3b3357be..57a3e548 100644 --- a/patches/d3d11-Deferred_Context/0001-d3d11-Add-stub-deferred-rendering-context.patch +++ b/patches/d3d11-Deferred_Context/0001-d3d11-Add-stub-deferred-rendering-context.patch @@ -1,17 +1,18 @@ -From 9f36741fe5895aaf8aa5a954b78db09e32c2db3a Mon Sep 17 00:00:00 2001 +From 79ef8b7836196e9215a29f8f2d9ce25f3e671f03 Mon Sep 17 00:00:00 2001 From: Kimmo Myllyvirta Date: Sat, 24 Sep 2016 06:51:24 +0300 Subject: [PATCH] d3d11: Add stub deferred rendering context. --- - dlls/d3d11/device.c | 1267 +++++++++++++++++++++++++++++++++++++++++++++------ - 1 file changed, 1129 insertions(+), 138 deletions(-) + dlls/d3d11/device.c | 1267 +++++++++++++++++++++++++++++++++----- + dlls/d3d11/tests/d3d11.c | 4 +- + 2 files changed, 1132 insertions(+), 139 deletions(-) diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c -index 8f9a850..b7cdd49 100644 +index 08579164bd..fbc875c6fe 100644 --- a/dlls/d3d11/device.c +++ b/dlls/d3d11/device.c -@@ -25,6 +25,16 @@ +@@ -22,6 +22,16 @@ WINE_DEFAULT_DEBUG_CHANNEL(d3d11); @@ -28,7 +29,7 @@ index 8f9a850..b7cdd49 100644 static void STDMETHODCALLTYPE d3d_null_wined3d_object_destroyed(void *parent) {} static const struct wined3d_parent_ops d3d_null_wined3d_parent_ops = -@@ -2886,218 +2896,1186 @@ static void d3d11_immediate_context_destroy(struct d3d11_immediate_context *cont +@@ -2883,218 +2893,1186 @@ static void d3d11_immediate_context_destroy(struct d3d11_immediate_context *cont wined3d_private_store_cleanup(&context->private_store); } @@ -1351,7 +1352,7 @@ index 8f9a850..b7cdd49 100644 iface, byte_code, byte_code_length, class_linkage, shader); if (class_linkage) -@@ -3365,9 +4343,22 @@ static HRESULT STDMETHODCALLTYPE d3d11_device_CreateCounter(ID3D11Device2 *iface +@@ -3362,9 +4340,22 @@ static HRESULT STDMETHODCALLTYPE d3d11_device_CreateCounter(ID3D11Device2 *iface static HRESULT STDMETHODCALLTYPE d3d11_device_CreateDeferredContext(ID3D11Device2 *iface, UINT flags, ID3D11DeviceContext **context) { @@ -1376,6 +1377,28 @@ index 8f9a850..b7cdd49 100644 } static HRESULT STDMETHODCALLTYPE d3d11_device_OpenSharedResource(ID3D11Device2 *iface, HANDLE resource, REFIID iid, +diff --git a/dlls/d3d11/tests/d3d11.c b/dlls/d3d11/tests/d3d11.c +index d58319df58..e653fb30b2 100644 +--- a/dlls/d3d11/tests/d3d11.c ++++ b/dlls/d3d11/tests/d3d11.c +@@ -2231,6 +2231,8 @@ static void test_create_deferred_context(void) + + hr = ID3D11Device_CreateDeferredContext(device, 0, &context); + todo_wine ok(hr == DXGI_ERROR_INVALID_CALL, "Failed to create deferred context, hr %#x.\n", hr); ++ if (SUCCEEDED(hr)) ++ ID3D11DeviceContext_Release(context); + + refcount = ID3D11Device_Release(device); + ok(!refcount, "Device has %u references left.\n", refcount); +@@ -2243,7 +2245,7 @@ static void test_create_deferred_context(void) + + expected_refcount = get_refcount(device) + 1; + hr = ID3D11Device_CreateDeferredContext(device, 0, &context); +- todo_wine ok(hr == S_OK, "Failed to create deferred context, hr %#x.\n", hr); ++ ok(hr == S_OK, "Failed to create deferred context, hr %#x.\n", hr); + if (FAILED(hr)) + goto done; + refcount = get_refcount(device); -- -1.9.1 +2.21.0 diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index c89f0e0e..0ce56132 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -2510,8 +2510,8 @@ fi # | * [#44089] Correcly align the mapinfo buffer. # | # | Modified files: -# | * dlls/d3d11/device.c, dlls/wined3d/buffer.c, dlls/wined3d/resource.c, dlls/wined3d/texture.c, dlls/wined3d/wined3d.spec, -# | dlls/wined3d/wined3d_private.h, include/wine/wined3d.h +# | * dlls/d3d11/device.c, dlls/d3d11/tests/d3d11.c, dlls/wined3d/buffer.c, dlls/wined3d/resource.c, dlls/wined3d/texture.c, +# | dlls/wined3d/wined3d.spec, dlls/wined3d/wined3d_private.h, include/wine/wined3d.h # | if test "$enable_d3d11_Deferred_Context" -eq 1; then patch_apply d3d11-Deferred_Context/0001-d3d11-Add-stub-deferred-rendering-context.patch