From 59df3d13cca968b7a9c1acd69e5edeedee06be4a Mon Sep 17 00:00:00 2001 From: Ryan Houdek Date: Thu, 1 Apr 2021 19:15:08 -0700 Subject: [PATCH] Don't set up RootFS folder or inotify thread on config load failure Can happen in the case that the default file tries to get loaded and doens't exist --- Source/Tools/FEXConfig/Main.cpp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/Source/Tools/FEXConfig/Main.cpp b/Source/Tools/FEXConfig/Main.cpp index 53ae94233..721b367e1 100644 --- a/Source/Tools/FEXConfig/Main.cpp +++ b/Source/Tools/FEXConfig/Main.cpp @@ -56,15 +56,16 @@ namespace { MsgTimerStart = std::chrono::high_resolution_clock::now(); } - void OpenFile(std::string Filename) { + bool OpenFile(std::string Filename) { if (!std::filesystem::exists(Filename)) { OpenMsgMessagePopup("Couldn't open: " + Filename); - return; + return false; } ConfigOpen = true; ConfigFilename = Filename; LoadedConfig = std::make_unique(Filename); LoadedConfig->Load(); + return true; } void LoadNamedRootFSFolder() { @@ -604,9 +605,10 @@ namespace { } if (Selected.OpenDefault || (ImGui::IsKeyPressed(SDL_SCANCODE_O) && io.KeyCtrl && io.KeyShift)) { - OpenFile(FEXCore::Config::GetConfigFileLocation()); - LoadNamedRootFSFolder(); - SetupINotify(); + if (OpenFile(FEXCore::Config::GetConfigFileLocation())) { + LoadNamedRootFSFolder(); + SetupINotify(); + } } if (Selected.LoadDefault || (ImGui::IsKeyPressed(SDL_SCANCODE_D) && io.KeyCtrl && io.KeyShift)) {