mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-01-28 22:04:43 -08:00
d3d11-Deferred_Context: Allow NULL pointer for initial count in OMSetRenderTargetsAndUnorderedAccessViews.
Thanks Michael Müller.
This commit is contained in:
parent
c3167b37c2
commit
b67879cfb2
@ -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 <jojos_band@gmx.net>
|
||||
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];
|
||||
+ }
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user