Merge branch 'master' into jgrpp
# Conflicts: # .github/workflows/release-windows.yml # src/autoreplace_gui.cpp # src/cargotype.cpp # src/company_base.h # src/company_cmd.cpp # src/company_gui.cpp # src/currency.h # src/date_gui.cpp # src/dropdown.cpp # src/dropdown_func.h # src/dropdown_type.h # src/game/game_gui.cpp # src/genworld.cpp # src/genworld_gui.cpp # src/ground_vehicle.hpp # src/group_gui.cpp # src/house.h # src/industry_gui.cpp # src/network/network_client.cpp # src/network/network_server.cpp # src/network/network_type.h # src/newgrf_class_func.h # src/newgrf_house.cpp # src/newgrf_roadstop.h # src/openttd.cpp # src/order_gui.cpp # src/saveload/saveload.cpp # src/saveload/saveload.h # src/screenshot_gui.cpp # src/settings_gui.cpp # src/settings_type.h # src/slider.cpp # src/smallmap_gui.cpp # src/station_cmd.cpp # src/stdafx.h # src/survey.cpp # src/tile_map.h # src/town_cmd.cpp # src/town_gui.cpp # src/vehicle.cpp # src/vehicle_gui.cpp # src/vehicle_gui_base.h
This commit is contained in:
@@ -3583,19 +3583,23 @@ void SetSaveLoadError(StringID str)
|
||||
_sl.error_str = str;
|
||||
}
|
||||
|
||||
/** Get the string representation of the error message */
|
||||
std::string GetSaveLoadErrorString()
|
||||
/** Return the appropriate initial string for an error depending on whether we are saving or loading. */
|
||||
StringID GetSaveLoadErrorType()
|
||||
{
|
||||
SetDParam(0, _sl.error_str);
|
||||
SetDParamStr(1, _sl.extra_msg);
|
||||
return GetString(_sl.action == SLA_SAVE ? STR_ERROR_GAME_SAVE_FAILED : STR_ERROR_GAME_LOAD_FAILED);
|
||||
return _sl.action == SLA_SAVE ? STR_ERROR_GAME_SAVE_FAILED : STR_ERROR_GAME_LOAD_FAILED;
|
||||
}
|
||||
|
||||
/** Return the description of the error. **/
|
||||
StringID GetSaveLoadErrorMessage()
|
||||
{
|
||||
SetDParamStr(0, _sl.extra_msg);
|
||||
return _sl.error_str;
|
||||
}
|
||||
|
||||
/** Show a gui message when saving has failed */
|
||||
static void SaveFileError()
|
||||
{
|
||||
SetDParamStr(0, GetSaveLoadErrorString());
|
||||
ShowErrorMessage(STR_JUST_RAW_STRING, INVALID_STRING_ID, WL_ERROR);
|
||||
ShowErrorMessage(GetSaveLoadErrorType(), GetSaveLoadErrorMessage(), WL_ERROR);
|
||||
SaveFileDone();
|
||||
}
|
||||
|
||||
@@ -3632,7 +3636,7 @@ static SaveOrLoadResult SaveFileToDisk(bool threaded)
|
||||
* cancelled due to a client disconnecting. */
|
||||
if (_sl.error_str != STR_NETWORK_ERROR_LOSTCONNECTION) {
|
||||
/* Skip the "colour" character */
|
||||
DEBUG(sl, 0, "%s", strip_leading_colours(GetSaveLoadErrorString()));
|
||||
DEBUG(sl, 0, "%s%s", strip_leading_colours(GetString(GetSaveLoadErrorType())), GetString(GetSaveLoadErrorMessage()).c_str());
|
||||
asfp = SaveFileError;
|
||||
}
|
||||
|
||||
@@ -4072,7 +4076,7 @@ SaveOrLoadResult LoadWithFilter(std::shared_ptr<LoadFilter> reader)
|
||||
ClearSaveLoadState();
|
||||
|
||||
/* Skip the "colour" character */
|
||||
DEBUG(sl, 0, "%s", strip_leading_colours(GetSaveLoadErrorString()));
|
||||
DEBUG(sl, 0, "%s%s", strip_leading_colours(GetString(GetSaveLoadErrorType())), GetString(GetSaveLoadErrorMessage()).c_str());
|
||||
|
||||
return SL_REINIT;
|
||||
}
|
||||
@@ -4181,7 +4185,7 @@ SaveOrLoadResult SaveOrLoad(const std::string &filename, SaveLoadOperation fop,
|
||||
ClearSaveLoadState();
|
||||
|
||||
/* Skip the "colour" character */
|
||||
if (fop != SLO_CHECK) DEBUG(sl, 0, "%s", strip_leading_colours(GetSaveLoadErrorString()));
|
||||
if (fop != SLO_CHECK) DEBUG(sl, 0, "%s%s", strip_leading_colours(GetString(GetSaveLoadErrorType())), GetString(GetSaveLoadErrorMessage()).c_str());
|
||||
|
||||
/* A saver/loader exception!! reinitialize all variables to prevent crash! */
|
||||
return (fop == SLO_LOAD) ? SL_REINIT : SL_ERROR;
|
||||
|
Reference in New Issue
Block a user