From eb765394c2fd8232158fe02c8644309657dc1fe3 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Sat, 20 Jan 2018 10:19:20 -0800 Subject: [PATCH] broadcom/vc5: Skip over missing color buffers for a couple of checks. Fixes crashes in piglit alpha-to-coverage-no-draw-buffer-zero 2 --- src/gallium/drivers/vc5/vc5_program.c | 3 +++ src/gallium/drivers/vc5/vc5_state.c | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/gallium/drivers/vc5/vc5_program.c b/src/gallium/drivers/vc5/vc5_program.c index ddb51b7f02a..881bd4501d8 100644 --- a/src/gallium/drivers/vc5/vc5_program.c +++ b/src/gallium/drivers/vc5/vc5_program.c @@ -378,6 +378,9 @@ vc5_update_compiled_fs(struct vc5_context *vc5, uint8_t prim_mode) for (int i = 0; i < key->nr_cbufs; i++) { struct pipe_surface *cbuf = vc5->framebuffer.cbufs[i]; + if (!cbuf) + continue; + const struct util_format_description *desc = util_format_description(cbuf->format); diff --git a/src/gallium/drivers/vc5/vc5_state.c b/src/gallium/drivers/vc5/vc5_state.c index 81ae33d7178..ea867279a06 100644 --- a/src/gallium/drivers/vc5/vc5_state.c +++ b/src/gallium/drivers/vc5/vc5_state.c @@ -443,6 +443,9 @@ vc5_set_framebuffer_state(struct pipe_context *pctx, vc5->blend_dst_alpha_one = 0; for (int i = 0; i < vc5->framebuffer.nr_cbufs; i++) { struct pipe_surface *cbuf = vc5->framebuffer.cbufs[i]; + if (!cbuf) + continue; + const struct util_format_description *desc = util_format_description(cbuf->format); -- 2.30.2