mirror of
https://github.com/godotengine/godot.git
synced 2024-11-26 14:13:10 +00:00
Print error message when await is not followed by signal or coroutine
When await was not followed by a signal or coroutine the GDScript parser would crash. This fix will check if await is followed by a signal or coroutine in case that isn't true (element == nullptr) then an error message is printed.
This commit is contained in:
parent
dcf2d09231
commit
e77338978f
@ -2380,7 +2380,11 @@ GDScriptParser::ExpressionNode *GDScriptParser::parse_assignment(ExpressionNode
|
||||
|
||||
GDScriptParser::ExpressionNode *GDScriptParser::parse_await(ExpressionNode *p_previous_operand, bool p_can_assign) {
|
||||
AwaitNode *await = alloc_node<AwaitNode>();
|
||||
await->to_await = parse_precedence(PREC_AWAIT, false);
|
||||
ExpressionNode *element = parse_precedence(PREC_AWAIT, false);
|
||||
if (element == nullptr) {
|
||||
push_error(R"(Expected signal or coroutine after "await".)");
|
||||
}
|
||||
await->to_await = element;
|
||||
|
||||
current_function->is_coroutine = true;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user