From 7764640f2241b5972a48665ff2e0d001aff0993c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pedro=20J=2E=20Est=C3=A9banez?= Date: Mon, 16 Oct 2017 21:55:42 +0200 Subject: Fix crash in shader parsing ...that would happen if incorrect syntax was found just after an opening square bracket. Fixes #12046. --- servers/visual/shader_language.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/servers/visual/shader_language.cpp b/servers/visual/shader_language.cpp index b2a11deea1..8fee6050a0 100644 --- a/servers/visual/shader_language.cpp +++ b/servers/visual/shader_language.cpp @@ -2586,6 +2586,8 @@ ShaderLanguage::Node *ShaderLanguage::_parse_expression(BlockNode *p_block, cons } else if (tk.type == TK_BRACKET_OPEN) { Node *index = _parse_and_reduce_expression(p_block, p_builtin_types); + if (!index) + return NULL; if (index->get_datatype() != TYPE_INT && index->get_datatype() != TYPE_UINT) { _set_error("Only integer datatypes are allowed for indexing"); -- cgit v1.2.3