summaryrefslogtreecommitdiffstats
path: root/modules/gdscript/gdscript_parser.cpp
diff options
context:
space:
mode:
authorStephen Nichols <snichols@certainaffinity.com>2020-08-05 14:41:46 -0500
committerStephen Nichols <snichols@certainaffinity.com>2020-08-05 14:41:46 -0500
commit8a13be50abe929b1905b5e5ef72b199b60de13c3 (patch)
tree18646e3319652337cbb2840a990553a2b912fc40 /modules/gdscript/gdscript_parser.cpp
parent6831da630f5609e1b659d65425d9da07e25df616 (diff)
downloadredot-engine-8a13be50abe929b1905b5e5ef72b199b60de13c3.tar.gz
Fixing null callee crash.
Diffstat (limited to 'modules/gdscript/gdscript_parser.cpp')
-rw-r--r--modules/gdscript/gdscript_parser.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/modules/gdscript/gdscript_parser.cpp b/modules/gdscript/gdscript_parser.cpp
index af07457750..79dc0313f1 100644
--- a/modules/gdscript/gdscript_parser.cpp
+++ b/modules/gdscript/gdscript_parser.cpp
@@ -2419,7 +2419,9 @@ GDScriptParser::ExpressionNode *GDScriptParser::parse_call(ExpressionNode *p_pre
} else {
call->callee = p_previous_operand;
- if (call->callee->type == Node::IDENTIFIER) {
+ if (call->callee == nullptr) {
+ push_error(R"*(Cannot call on an expression. Use ".call()" if it's a Callable.)*");
+ } else if (call->callee->type == Node::IDENTIFIER) {
call->function_name = static_cast<IdentifierNode *>(call->callee)->name;
make_completion_context(COMPLETION_METHOD, call->callee);
} else if (call->callee->type == Node::SUBSCRIPT) {