From b67879cfb2e64cef927ed154fa33c53e50f501fd Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Mon, 2 Oct 2017 13:54:56 +0200 Subject: [PATCH] d3d11-Deferred_Context: Allow NULL pointer for initial count in OMSetRenderTargetsAndUnorderedAccessViews. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Thanks Michael Müller. --- ...lement-OMSetRenderTargetsAndUnorderedAccess.patch | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/patches/d3d11-Deferred_Context/0034-d3d11-Implement-OMSetRenderTargetsAndUnorderedAccess.patch b/patches/d3d11-Deferred_Context/0034-d3d11-Implement-OMSetRenderTargetsAndUnorderedAccess.patch index b6faf3d1..48748097 100644 --- a/patches/d3d11-Deferred_Context/0034-d3d11-Implement-OMSetRenderTargetsAndUnorderedAccess.patch +++ b/patches/d3d11-Deferred_Context/0034-d3d11-Implement-OMSetRenderTargetsAndUnorderedAccess.patch @@ -1,4 +1,4 @@ -From 1aa986214da6fd1cd63daa9868ff21609881f560 Mon Sep 17 00:00:00 2001 +From bce549e905b052637153e5846491626083d3fac2 Mon Sep 17 00:00:00 2001 From: Johannes Specht Date: Mon, 4 Sep 2017 03:07:13 +0200 Subject: d3d11: Implement OMSetRenderTargetsAndUnorderedAccessViews for @@ -9,7 +9,7 @@ Subject: d3d11: Implement OMSetRenderTargetsAndUnorderedAccessViews for 1 file changed, 75 insertions(+), 2 deletions(-) diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c -index 4a159a2ff7b..34f646231a5 100644 +index 2aec0dde260..b513bda5ad3 100644 --- a/dlls/d3d11/device.c +++ b/dlls/d3d11/device.c @@ -40,6 +40,7 @@ enum deferred_cmd @@ -79,7 +79,7 @@ index 4a159a2ff7b..34f646231a5 100644 case DEFERRED_COPYRESOURCE: { ID3D11DeviceContext_CopyResource(iface, -@@ -4443,12 +4482,46 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_OMSetRenderTargetsAndUnorde +@@ -4397,12 +4436,46 @@ static void STDMETHODCALLTYPE d3d11_deferred_context_OMSetRenderTargetsAndUnorde UINT unordered_access_view_start_slot, UINT unordered_access_view_count, ID3D11UnorderedAccessView *const *unordered_access_views, const UINT *initial_counts) { @@ -111,8 +111,8 @@ index 4a159a2ff7b..34f646231a5 100644 + call->render_targets_and_unordered_access_views_info.render_target_views = (void *)(call + 1); + call->render_targets_and_unordered_access_views_info.unordered_access_views = + (void *)&call->render_targets_and_unordered_access_views_info.render_target_views[render_target_view_count]; -+ call->render_targets_and_unordered_access_views_info.initial_counts = -+ (void *)&call->render_targets_and_unordered_access_views_info.unordered_access_views[unordered_access_view_count]; ++ call->render_targets_and_unordered_access_views_info.initial_counts = initial_counts ? ++ (void *)&call->render_targets_and_unordered_access_views_info.unordered_access_views[unordered_access_view_count] : NULL; + + for (i = 0; i < render_target_view_count; i++) + { @@ -123,7 +123,7 @@ index 4a159a2ff7b..34f646231a5 100644 + { + if (unordered_access_views[i]) ID3D11UnorderedAccessView_AddRef(unordered_access_views[i]); + call->render_targets_and_unordered_access_views_info.unordered_access_views[i] = unordered_access_views[i]; -+ call->render_targets_and_unordered_access_views_info.initial_counts[i] = initial_counts[i]; ++ if (initial_counts) call->render_targets_and_unordered_access_views_info.initial_counts[i] = initial_counts[i]; + } }