From 43b110dd62cd386c5ccdca73defe1b30a8cd972b Mon Sep 17 00:00:00 2001 From: squidbus <1249084-squidbus@users.noreply.gitlab.freedesktop.org> Date: Sun, 7 Jun 2026 22:10:17 -0700 Subject: [PATCH] kk: Fix divide by 0 in non-indexed draw unroll For non-indexed draws, `index_buffer_el_size_B` is 0. Reviewed-by: Aitor Camacho Part-of: --- src/kosmickrisp/vulkan/kk_cmd_draw.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/kosmickrisp/vulkan/kk_cmd_draw.c b/src/kosmickrisp/vulkan/kk_cmd_draw.c index 2b4458dd312..41a5c528787 100644 --- a/src/kosmickrisp/vulkan/kk_cmd_draw.c +++ b/src/kosmickrisp/vulkan/kk_cmd_draw.c @@ -1309,8 +1309,9 @@ kk_unroll_geometry(struct kk_cmd_buffer *cmd, struct kk_draw_command *data) .in_draw_stride_el = data->indirect_command.stride / sizeof(uint32_t), /* Handle primitive restart disable by forcing index to UINT32_MAX */ .restart_index = !data->restart ? UINT32_MAX : data->restart_index, - .index_buffer_size_el = - data->index_buffer_range_B / data->index_buffer_el_size_B, + .index_buffer_size_el = data->indexed ? data->index_buffer_range_B / + data->index_buffer_el_size_B + : 0u, .in_el_size_B = data->index_buffer_el_size_B, .out_el_size_B = 4u, .flatshade_first = true,