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

Zebediah Figura zfigura at codeweavers.com
Sun Jul 18 14:22:16 CDT 2021


Signed-off-by: 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 60c4b37c..bfb52cde 100644
--- a/libs/vkd3d/command.c
+++ b/libs/vkd3d/command.c
@@ -4149,8 +4149,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.32.0




More information about the wine-devel mailing list