Browse Source

Prevent ternary expression with a sampler types in shaders

Chaosus 1 month ago
parent
commit
d3792efa89
1 changed files with 1 additions and 1 deletions
  1. 1 1
      servers/rendering/shader_language.cpp

+ 1 - 1
servers/rendering/shader_language.cpp

@@ -2003,7 +2003,7 @@ bool ShaderLanguage::_validate_operator(const BlockNode *p_block, const Function
 			DataType nb = p_op->arguments[1]->get_datatype();
 			DataType nb = p_op->arguments[1]->get_datatype();
 			DataType nc = p_op->arguments[2]->get_datatype();
 			DataType nc = p_op->arguments[2]->get_datatype();
 
 
-			valid = na == TYPE_BOOL && (nb == nc);
+			valid = na == TYPE_BOOL && (nb == nc) && !is_sampler_type(nb);
 			ret_type = nb;
 			ret_type = nb;
 			ret_size = sa;
 			ret_size = sa;
 		} break;
 		} break;