1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-04 12:00:25 +00:00

Fix shader compiler crash when parsing case labels with non-existent vars.

This commit is contained in:
Max Shawabkeh
2025-05-24 13:10:46 -07:00
parent 45fc515ae3
commit d042763750

View File

@@ -8532,7 +8532,11 @@ Error ShaderLanguage::_parse_block(BlockNode *p_block, const FunctionInfo &p_fun
DataType data_type; DataType data_type;
bool is_const; 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) { if (is_const && data_type == p_block->expected_type) {
correct_constant_expression = true; correct_constant_expression = true;
} }