Module: Mesa
Branch: master
Commit: 4db9ad98939711e5c00e9ffb196614fcd9a98ad8
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=4db9ad98939711e5c00e9ffb196614fcd9a98ad8

Author: Eric Anholt <[email protected]>
Date:   Mon Sep 18 12:58:05 2017 -0700

broadcom/vc4: Fix crashes since the gallium blitter reworks.

Even if we're not clearing color, the blitter has started dereferencing
the color value.

---

 src/gallium/drivers/vc4/vc4_draw.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/vc4/vc4_draw.c 
b/src/gallium/drivers/vc4/vc4_draw.c
index fdf983dae7..da748cdc14 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;

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to