diff --git a/src/imagination/vulkan/pvr_hw_pass.c b/src/imagination/vulkan/pvr_hw_pass.c index dccb9d5c644..f3e9be87ca5 100644 --- a/src/imagination/vulkan/pvr_hw_pass.c +++ b/src/imagination/vulkan/pvr_hw_pass.c @@ -821,6 +821,9 @@ pvr_copy_storage_details(struct pvr_renderpass_context *ctx, input_subpass->color_count + input_subpass->input_count; VkResult result; + if (max_rts == 0) + return VK_SUCCESS; + hw_subpass->setup.mrt_resources = vk_zalloc(ctx->allocator, sizeof(hw_subpass->setup.mrt_resources[0U]) * max_rts, @@ -847,6 +850,9 @@ pvr_copy_storage_details(struct pvr_renderpass_context *ctx, hw_subpass->setup.num_render_targets = input_subpass->color_count; + if (input_subpass->input_count == 0) + return VK_SUCCESS; + /* For this subpass's input attachments. */ hw_subpass->input_access = vk_alloc(ctx->allocator, sizeof(hw_subpass->input_access[0U]) *