Fix shader compiler crash when parsing case labels with non-existent vars.
This commit is contained in:
parent
45fc515ae3
commit
d042763750
1 changed files with 5 additions and 1 deletions
|
|
@ -8532,7 +8532,11 @@ Error ShaderLanguage::_parse_block(BlockNode *p_block, const FunctionInfo &p_fun
|
|||
DataType data_type;
|
||||
bool is_const;
|
||||
|
||||
_find_identifier(p_block, false, p_function_info, tk.text, &data_type, nullptr, &is_const);
|
||||
bool found = _find_identifier(p_block, false, p_function_info, tk.text, &data_type, nullptr, &is_const);
|
||||
if (!found) {
|
||||
_set_error(vformat(RTR("Undefined identifier '%s' in a case label."), String(tk.text)));
|
||||
return ERR_PARSE_ERROR;
|
||||
}
|
||||
if (is_const && data_type == p_block->expected_type) {
|
||||
correct_constant_expression = true;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue