Explorar o código

Merge pull request #55433 from V-Sekai/prev_operand_nullptr_check

Check for nullptr expression in parse_precedence function
Rémi Verschelde %!s(int64=3) %!d(string=hai) anos
pai
achega
b5f524d4c0
Modificáronse 1 ficheiros con 1 adicións e 1 borrados
  1. 1 1
      modules/gdscript/gdscript_parser.cpp

+ 1 - 1
modules/gdscript/gdscript_parser.cpp

@@ -2105,7 +2105,7 @@ GDScriptParser::ExpressionNode *GDScriptParser::parse_precedence(Precedence p_pr
 	ExpressionNode *previous_operand = (this->*prefix_rule)(nullptr, p_can_assign);
 	ExpressionNode *previous_operand = (this->*prefix_rule)(nullptr, p_can_assign);
 
 
 	while (p_precedence <= get_rule(current.type)->precedence) {
 	while (p_precedence <= get_rule(current.type)->precedence) {
-		if (p_stop_on_assign && current.type == GDScriptTokenizer::Token::EQUAL) {
+		if (previous_operand == nullptr || (p_stop_on_assign && current.type == GDScriptTokenizer::Token::EQUAL)) {
 			return previous_operand;
 			return previous_operand;
 		}
 		}
 		// Also switch multiline mode on here for infix operators.
 		// Also switch multiline mode on here for infix operators.