diff options
author | 2017-03-29 17:09:40 +0200 | |
---|---|---|
committer | 2017-03-29 17:09:40 +0200 | |
commit | 49f7c99c7786ce257fae28dfeae2f8ee5810424c (patch) | |
tree | 1bbd30dd4dd48596186846c2fc77a8dc748215d2 /3rdparty/bgfx/3rdparty/glsl-optimizer/src/glsl/ast_to_hir.cpp | |
parent | 79f22e060b2c012d628d5d1d83288c1bb6e6acef (diff) |
Update BGFX and BX (nw)
Diffstat (limited to '3rdparty/bgfx/3rdparty/glsl-optimizer/src/glsl/ast_to_hir.cpp')
-rw-r--r-- | 3rdparty/bgfx/3rdparty/glsl-optimizer/src/glsl/ast_to_hir.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/3rdparty/bgfx/3rdparty/glsl-optimizer/src/glsl/ast_to_hir.cpp b/3rdparty/bgfx/3rdparty/glsl-optimizer/src/glsl/ast_to_hir.cpp index d31c53465fc..09b688578f7 100644 --- a/3rdparty/bgfx/3rdparty/glsl-optimizer/src/glsl/ast_to_hir.cpp +++ b/3rdparty/bgfx/3rdparty/glsl-optimizer/src/glsl/ast_to_hir.cpp @@ -3045,10 +3045,12 @@ process_initializer(ir_variable *var, ast_declaration *decl, /* Propagate precision qualifier for constant value */ if (type->qualifier.flags.q.constant) { ir_constant *constant_value = rhs->constant_expression_value(); - constant_value->set_precision((glsl_precision)type->qualifier.precision); - if (constant_value->type->is_array()) { - for (unsigned i = 0; i < constant_value->type->length; i++) { - constant_value->get_array_element(i)->set_precision((glsl_precision)type->qualifier.precision); + if (NULL != constant_value) { + constant_value->set_precision((glsl_precision)type->qualifier.precision); + if (constant_value->type->is_array()) { + for (unsigned i = 0; i < constant_value->type->length; i++) { + constant_value->get_array_element(i)->set_precision((glsl_precision)type->qualifier.precision); + } } } } |