mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-03-03 04:00:42 +01:00
anv/pipeline: Don't look at blend state unless we have an attachment
Without this, we may end up dereferencing blend before we check for binding->index != UINT32_MAX. However, Vulkan allows the blend state to be NULL so long as you don't have any color attachments. This fixes a segfault when running The Talos Principal. Fixes:12f4e00b69Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Alex Smith <asmith@feralinteractive.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> (cherry picked from commitc8949e2498)
This commit is contained in:
parent
0bc9182f89
commit
ae5e793fd7
1 changed files with 3 additions and 3 deletions
|
|
@ -1371,10 +1371,10 @@ has_color_buffer_write_enabled(const struct anv_pipeline *pipeline,
|
|||
if (binding->set != ANV_DESCRIPTOR_SET_COLOR_ATTACHMENTS)
|
||||
continue;
|
||||
|
||||
const VkPipelineColorBlendAttachmentState *a =
|
||||
&blend->pAttachments[binding->index];
|
||||
if (binding->index == UINT32_MAX)
|
||||
continue;
|
||||
|
||||
if (binding->index != UINT32_MAX && a->colorWriteMask != 0)
|
||||
if (blend->pAttachments[binding->index].colorWriteMask != 0)
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue