From: Eric Anholt Date: Mon, 18 Sep 2017 19:58:05 +0000 (-0700) Subject: broadcom/vc4: Fix crashes since the gallium blitter reworks. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4db9ad98939711e5c00e9ffb196614fcd9a98ad8;p=mesa.git broadcom/vc4: Fix crashes since the gallium blitter reworks. Even if we're not clearing color, the blitter has started dereferencing the color value. --- diff --git a/src/gallium/drivers/vc4/vc4_draw.c b/src/gallium/drivers/vc4/vc4_draw.c index fdf983dae7f..da748cdc14d 100644 --- a/src/gallium/drivers/vc4/vc4_draw.c +++ b/src/gallium/drivers/vc4/vc4_draw.c @@ -517,6 +517,8 @@ vc4_clear(struct pipe_context *pctx, unsigned buffers, zsclear == PIPE_CLEAR_STENCIL) && (rsc->initialized_buffers & ~(zsclear | job->cleared)) && util_format_is_depth_and_stencil(vc4->framebuffer.zsbuf->format)) { + static const union pipe_color_union dummy_color = {}; + perf_debug("Partial clear of Z+stencil buffer, " "drawing a quad instead of fast clearing\n"); vc4_blitter_save(vc4); @@ -525,7 +527,7 @@ vc4_clear(struct pipe_context *pctx, unsigned buffers, vc4->framebuffer.height, 1, zsclear, - NULL, depth, stencil); + &dummy_color, depth, stencil); buffers &= ~zsclear; if (!buffers) return;