From 9908ae000be2c29438645aac3023e667988155ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branimir=20Karad=C5=BEi=C4=87?= Date: Wed, 22 Mar 2017 16:01:23 -0700 Subject: [PATCH] Integrated glsl-optimizer. --- 3rdparty/.editorconfig | 4 ++++ 3rdparty/glsl-optimizer/src/glsl/ast_to_hir.cpp | 10 ++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/3rdparty/.editorconfig b/3rdparty/.editorconfig index 25d102976..f88ec278c 100644 --- a/3rdparty/.editorconfig +++ b/3rdparty/.editorconfig @@ -31,3 +31,7 @@ indent_size = 4 [remotery/*] indent_style = space indent_size = 4 + +[glsl-optimizer/*] +indent_style = space +indent_size = 3 diff --git a/3rdparty/glsl-optimizer/src/glsl/ast_to_hir.cpp b/3rdparty/glsl-optimizer/src/glsl/ast_to_hir.cpp index d31c53465..09b688578 100644 --- a/3rdparty/glsl-optimizer/src/glsl/ast_to_hir.cpp +++ b/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); + } } } }