[PATCH vkd3d 09/12] vkd3d: Initialize all fields before calling d3d12_command_allocator_allocate_command_buffer().

Józef Kucia joseph.kucia at gmail.com
Wed Aug 15 06:57:57 CDT 2018


From: Józef Kucia <jkucia at codeweavers.com>

Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
 libs/vkd3d/command.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/libs/vkd3d/command.c b/libs/vkd3d/command.c
index 501a06764e24..9455898c07b3 100644
--- a/libs/vkd3d/command.c
+++ b/libs/vkd3d/command.c
@@ -4001,12 +4001,6 @@ static HRESULT d3d12_command_list_init(struct d3d12_command_list *list, struct d
     list->allocator = allocator;
     list->pipeline_state = initial_pipeline_state;
 
-    if (FAILED(hr = d3d12_command_allocator_allocate_command_buffer(allocator, list)))
-    {
-        ID3D12Device_Release(&device->ID3D12Device_iface);
-        return hr;
-    }
-
     memset(list->strides, 0, sizeof(list->strides));
     list->ia_desc.sType = VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO;
     list->ia_desc.pNext = NULL;
@@ -4025,6 +4019,12 @@ static HRESULT d3d12_command_list_init(struct d3d12_command_list *list, struct d
 
     list->state = NULL;
 
+    if (FAILED(hr = d3d12_command_allocator_allocate_command_buffer(allocator, list)))
+    {
+        ID3D12Device_Release(&device->ID3D12Device_iface);
+        return hr;
+    }
+
     return S_OK;
 }
 
-- 
2.16.4




More information about the wine-devel mailing list