glsl2: Don't dereference a NULL var in CE handling during a compile error.

If an undeclared variable was dereferenced in an expression that
needed constant expression handling, we would walk off a null ir->var
pointer.

Fixes:
glsl1-TIntermediate::addUnaryMath
This commit is contained in:
Eric Anholt
2010-07-27 12:10:50 -07:00
parent 20c074ae28
commit 54f583a206

View File

@@ -676,6 +676,10 @@ ir_swizzle::constant_expression_value()
ir_constant *
ir_dereference_variable::constant_expression_value()
{
/* This may occur during compile and var->type is glsl_type::error_type */
if (!var)
return NULL;
return var->constant_value ? var->constant_value->clone(NULL) : NULL;
}