[PATCH vkd3d 03/12] vkd3d: Do not call vkCmdPushConstants() with a count of zero (KHRONOS_validation).

Giovanni Mascellani gmascellani at codeweavers.com
Mon Apr 18 01:33:59 CDT 2022


From: Zebediah Figura <zfigura at codeweavers.com>

---
 libs/vkd3d/command.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libs/vkd3d/command.c b/libs/vkd3d/command.c
index 09171fe4..481553d4 100644
--- a/libs/vkd3d/command.c
+++ b/libs/vkd3d/command.c
@@ -4657,8 +4657,9 @@ static void d3d12_command_list_set_root_constants(struct d3d12_command_list *lis
     const struct d3d12_root_constant *c;
 
     c = root_signature_get_32bit_constants(root_signature, index);
-    VK_CALL(vkCmdPushConstants(list->vk_command_buffer, root_signature->vk_pipeline_layout,
-            c->stage_flags, c->offset + offset * sizeof(uint32_t), count * sizeof(uint32_t), data));
+    if (count)
+        VK_CALL(vkCmdPushConstants(list->vk_command_buffer, root_signature->vk_pipeline_layout,
+                c->stage_flags, c->offset + offset * sizeof(uint32_t), count * sizeof(uint32_t), data));
 }
 
 static void STDMETHODCALLTYPE d3d12_command_list_SetComputeRoot32BitConstant(ID3D12GraphicsCommandList2 *iface,
-- 
2.35.2




More information about the wine-devel mailing list