[Mesa-dev] [PATCH 1/2] i965/gen6: Fix segfault in prepare_blend_state()

Chad Versace chad at chad-versace.us
Mon Oct 17 07:27:54 PDT 2011


Don't dereference the color buffer if one isn't attached.

This fixes the following Piglit tests in my experimental HiZ branch:
    glean/logicOp
    glean/paths

Note: This is a candidate for the stable branches.
Signed-off-by: Chad Versace <chad at chad-versace.us>
---
 src/mesa/drivers/dri/i965/gen6_cc.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/gen6_cc.c b/src/mesa/drivers/dri/i965/gen6_cc.c
index 1e6c4cf..b3ad157 100644
--- a/src/mesa/drivers/dri/i965/gen6_cc.c
+++ b/src/mesa/drivers/dri/i965/gen6_cc.c
@@ -64,7 +64,7 @@ prepare_blend_state(struct brw_context *brw)
 	 /* Floating point RTs should have no effect from LogicOp,
 	  * except for disabling of blending
 	  */
-	 if (_mesa_get_format_datatype(rb->Format) != GL_FLOAT) {
+	 if (rb && _mesa_get_format_datatype(rb->Format) != GL_FLOAT) {
 	    blend[b].blend1.logic_op_enable = 1;
 	    blend[b].blend1.logic_op_func =
 	       intel_translate_logic_op(ctx->Color.LogicOp);
-- 
1.7.6.4



More information about the mesa-dev mailing list