From 942ea5be4b15c9ed8e2cd37c5ea4cf5857b1a06a Mon Sep 17 00:00:00 2001 From: X7123M3-256 Date: Fri, 13 Jan 2017 23:05:43 +0000 Subject: [PATCH] Fix segfault when entered command doesn't exist --- src/openrct2/cmdline/CommandLine.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/openrct2/cmdline/CommandLine.cpp b/src/openrct2/cmdline/CommandLine.cpp index 2337744927..2f613905e7 100644 --- a/src/openrct2/cmdline/CommandLine.cpp +++ b/src/openrct2/cmdline/CommandLine.cpp @@ -568,6 +568,12 @@ extern "C" argEnumerator.TryPop(); const CommandLineCommand * command = CommandLine::FindCommandFor(CommandLine::RootCommands, &argEnumerator); + + if (command == nullptr) + { + return EXITCODE_FAIL; + } + if (command->Options != nullptr) { auto argEnumeratorForOptions = CommandLineArgEnumerator(argEnumerator); @@ -576,6 +582,7 @@ extern "C" return EXITCODE_FAIL; } } + if (command == CommandLine::RootCommands && command->Func == nullptr) { return CommandLine::HandleCommandDefault();