diff --git a/src/gui/gui_nation_picker.hpp b/src/gui/gui_nation_picker.hpp index ec8ea84f6..dd0e0d25b 100644 --- a/src/gui/gui_nation_picker.hpp +++ b/src/gui/gui_nation_picker.hpp @@ -181,7 +181,7 @@ class select_save_game : public button_element_base { if(i->is_new_game) { if(!sys::try_read_scenario_as_save_file(state, state.loaded_scenario_file)) { auto msg = std::string("Scenario file ") + simple_fs::native_to_utf8(state.loaded_scenario_file) + " could not be loaded."; - ui::popup_error_window(state, "Save Error", msg); + ui::popup_error_window(state, "Scenario Error", msg); } else { loaded = true; } @@ -189,6 +189,14 @@ class select_save_game : public button_element_base { if(!sys::try_read_save_file(state, i->file_name)) { auto msg = std::string("Save file ") + simple_fs::native_to_utf8(i->file_name) + " could not be loaded."; ui::popup_error_window(state, "Save Error", msg); + state.save_list_updated.store(true, std::memory_order::release); //update savefile list + //try loading save from scenario so we atleast have something to work on + if(!sys::try_read_scenario_as_save_file(state, state.loaded_scenario_file)) { + auto msg2 = std::string("Scenario file ") + simple_fs::native_to_utf8(state.loaded_scenario_file) + " could not be loaded."; + ui::popup_error_window(state, "Scenario Error", msg2); + } else { + loaded = true; + } } else { loaded = true; }