Mesa (master): glsl: Make sure not to dereference NULL

Neil Roberts nroberts at kemper.freedesktop.org
Mon Jul 6 18:54:22 UTC 2015


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

Author: Neil Roberts <neil at linux.intel.com>
Date:   Sat Jul  4 22:40:59 2015 +0100

glsl: Make sure not to dereference NULL

In this bit of code point_five can be NULL if the expression is not a
constant. This fixes it to match the pattern of the rest of the chunk
of code so that it checks for NULLs.

Cc: Matt Turner <mattst88 at gmail.com>
Cc: "10.6" <mesa-stable at lists.freedesktop.org>
Reviewed-by: Matt Turner <mattst88 at gmail.com>

---

 src/glsl/opt_algebraic.cpp |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp
index 9b8a426..c4b8715 100644
--- a/src/glsl/opt_algebraic.cpp
+++ b/src/glsl/opt_algebraic.cpp
@@ -589,7 +589,7 @@ ir_algebraic_visitor::handle_expression(ir_expression *ir)
                continue;
 
             ir_constant *point_five = add_expr->operands[1 - j]->as_constant();
-            if (!point_five->is_value(0.5, 0))
+            if (!point_five || !point_five->is_value(0.5, 0))
                continue;
 
             if (abs_expr->operands[0]->equals(sign_expr->operands[0])) {




More information about the mesa-commit mailing list