diff --git a/.pick_status.json b/.pick_status.json index a847e378455..9ac6855f32b 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -4804,7 +4804,7 @@ "description": "lavapipe: handle counterOffset in vkCmdDrawIndirectByteCountEXT", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null, "notes": null diff --git a/src/gallium/frontends/lavapipe/lvp_execute.c b/src/gallium/frontends/lavapipe/lvp_execute.c index e507f3a6346..42d2cefda63 100644 --- a/src/gallium/frontends/lavapipe/lvp_execute.c +++ b/src/gallium/frontends/lavapipe/lvp_execute.c @@ -3386,6 +3386,7 @@ static void handle_draw_indirect_byte_count(struct vk_cmd_queue_entry *cmd, dibc->counter_buffer_offset, 4, &draw.count); + draw.count -= dibc->counter_offset; state->info.start_instance = cmd->u.draw_indirect_byte_count_ext.first_instance; state->info.instance_count = cmd->u.draw_indirect_byte_count_ext.instance_count; state->info.index_size = 0;