From 0e10100aad4e46c8af138a3ca3fc2df05d176702 Mon Sep 17 00:00:00 2001 From: FSCyborg Date: Sat, 20 Jul 2019 23:31:11 -0400 Subject: [PATCH] Fix#2067 Original behavior in Fred was accidentally removed when upgrading the FSO mission parser to keep it from crashing FSO from a bad sexp. But returning false is only necessary in FSO since in FRED, we can fix the error once we know about it. --- code/mission/missionparse.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/code/mission/missionparse.cpp b/code/mission/missionparse.cpp index 81827fa4bc..de8a365447 100644 --- a/code/mission/missionparse.cpp +++ b/code/mission/missionparse.cpp @@ -5852,8 +5852,10 @@ bool post_process_mission() sprintf(error_msg, "%s.\n\nIn sexpression: %s\n(Error appears to be: %s)", sexp_error_message(result), sexp_str.c_str(), Sexp_nodes[bad_node].text); Warning(LOCATION, "%s", error_msg.c_str()); - // syntax errors are unrecoverable, so abort - return false; + // syntax errors are recoverable in Fred but not FS + if (!Fred_running) { + return false; + } } } }