summaryrefslogtreecommitdiff
path: root/src/gallium/frontends/lavapipe/lvp_cmd_buffer.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/frontends/lavapipe/lvp_cmd_buffer.c')
-rw-r--r--src/gallium/frontends/lavapipe/lvp_cmd_buffer.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/gallium/frontends/lavapipe/lvp_cmd_buffer.c b/src/gallium/frontends/lavapipe/lvp_cmd_buffer.c
index a3f376cfa92..bf8db50c00c 100644
--- a/src/gallium/frontends/lavapipe/lvp_cmd_buffer.c
+++ b/src/gallium/frontends/lavapipe/lvp_cmd_buffer.c
@@ -1718,7 +1718,10 @@ VKAPI_ATTR void VKAPI_CALL lvp_CmdBeginTransformFeedbackEXT(
cmd->u.begin_transform_feedback.counter_buffer_offsets = (VkDeviceSize *)(cmd->u.begin_transform_feedback.counter_buffers + counterBufferCount);
for (unsigned i = 0; i < counterBufferCount; i++) {
- cmd->u.begin_transform_feedback.counter_buffers[i] = lvp_buffer_from_handle(pCounterBuffers[i]);
+ if (pCounterBuffers)
+ cmd->u.begin_transform_feedback.counter_buffers[i] = lvp_buffer_from_handle(pCounterBuffers[i]);
+ else
+ cmd->u.begin_transform_feedback.counter_buffers[i] = NULL;
if (pCounterBufferOffsets)
cmd->u.begin_transform_feedback.counter_buffer_offsets[i] = pCounterBufferOffsets[i];
else
@@ -1750,7 +1753,10 @@ VKAPI_ATTR void VKAPI_CALL lvp_CmdEndTransformFeedbackEXT(
cmd->u.begin_transform_feedback.counter_buffer_offsets = (VkDeviceSize *)(cmd->u.begin_transform_feedback.counter_buffers + counterBufferCount);
for (unsigned i = 0; i < counterBufferCount; i++) {
- cmd->u.begin_transform_feedback.counter_buffers[i] = lvp_buffer_from_handle(pCounterBuffers[i]);
+ if (pCounterBuffers)
+ cmd->u.begin_transform_feedback.counter_buffers[i] = lvp_buffer_from_handle(pCounterBuffers[i]);
+ else
+ cmd->u.begin_transform_feedback.counter_buffers[i] = NULL;
if (pCounterBufferOffsets)
cmd->u.begin_transform_feedback.counter_buffer_offsets[i] = pCounterBufferOffsets[i];
else