Skip to content

Commit

Permalink
Merge pull request godotengine#43500 from AndreaCatania/gds_fixes
Browse files Browse the repository at this point in the history
Fixes crash when parse_expression returns nullptr.
  • Loading branch information
akien-mga authored Nov 27, 2020
2 parents 43f60c9 + 98daa0a commit d395f70
Showing 1 changed file with 3 additions and 1 deletion.
4 changes: 3 additions & 1 deletion modules/gdscript/gdscript_parser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,7 @@ void GDScriptParser::push_error(const String &p_message, const Node *p_origin) {

#ifdef DEBUG_ENABLED
void GDScriptParser::push_warning(const Node *p_source, GDScriptWarning::Code p_code, const String &p_symbol1, const String &p_symbol2, const String &p_symbol3, const String &p_symbol4) {
ERR_FAIL_COND(p_source == nullptr);
Vector<String> symbols;
if (!p_symbol1.empty()) {
symbols.push_back(p_symbol1);
Expand All @@ -201,6 +202,7 @@ void GDScriptParser::push_warning(const Node *p_source, GDScriptWarning::Code p_
}

void GDScriptParser::push_warning(const Node *p_source, GDScriptWarning::Code p_code, const Vector<String> &p_symbols) {
ERR_FAIL_COND(p_source == nullptr);
if (is_ignoring_warnings) {
return;
}
Expand Down Expand Up @@ -1419,7 +1421,7 @@ GDScriptParser::Node *GDScriptParser::parse_statement() {
}

#ifdef DEBUG_ENABLED
if (unreachable) {
if (unreachable && result != nullptr) {
current_suite->has_unreachable_code = true;
if (current_function) {
push_warning(result, GDScriptWarning::UNREACHABLE_CODE, current_function->identifier->name);
Expand Down

0 comments on commit d395f70

Please sign in to comment.