According to the Vulkan 1.0 spec:
"attachmentCount is the number of VkPipelineColorBlendAttachmentState
elements in pAttachments. This value must equal the colorAttachmentCount
for the subpass in which this pipeline is used."
so let's assert exactly that.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6766>
if (pipeline->subpass->color_count == 0)
return;
+ assert(pipeline->subpass->color_count == cb_info->attachmentCount);
+
pipeline->blend.needs_color_constants = false;
uint32_t color_write_masks = 0;
- for (uint32_t i = 0; i < cb_info->attachmentCount; i++) {
+ for (uint32_t i = 0; i < pipeline->subpass->color_count; i++) {
const VkPipelineColorBlendAttachmentState *b_state =
&cb_info->pAttachments[i];
- assert(i < pipeline->subpass->color_count);
-
uint32_t attachment_idx =
pipeline->subpass->color_attachments[i].attachment;
if (attachment_idx == VK_ATTACHMENT_UNUSED)