diff options
author | Michael Lutz <michi@icosahedron.de> | 2020-05-17 23:31:56 +0200 |
---|---|---|
committer | Michael Lutz <michi@icosahedron.de> | 2020-05-21 20:02:34 +0200 |
commit | 9b6f5e3bb850b6cff02cc761767fcdf49c681645 (patch) | |
tree | 1989b13b0ac5f06f78df1064124486e626f8811f /src/saveload/game_sl.cpp | |
parent | 9c2e47d03cbc4c7af416a34b09e0c8d0de7c3474 (diff) | |
download | openttd-9b6f5e3bb850b6cff02cc761767fcdf49c681645.tar.xz |
Codechange: Store GS lang texts in std::strings.
Diffstat (limited to 'src/saveload/game_sl.cpp')
-rw-r--r-- | src/saveload/game_sl.cpp | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/src/saveload/game_sl.cpp b/src/saveload/game_sl.cpp index 28a6c6c11..e13484385 100644 --- a/src/saveload/game_sl.cpp +++ b/src/saveload/game_sl.cpp @@ -113,23 +113,23 @@ static void Save_GSDT() extern GameStrings *_current_data; -static const char *_game_saveload_string; +static std::string _game_saveload_string; static uint _game_saveload_strings; static const SaveLoad _game_language_header[] = { - SLEG_STR(_game_saveload_string, SLE_STR), - SLEG_VAR(_game_saveload_strings, SLE_UINT32), - SLE_END() + SLEG_SSTR(_game_saveload_string, SLE_STR), + SLEG_VAR(_game_saveload_strings, SLE_UINT32), + SLE_END() }; static const SaveLoad _game_language_string[] = { - SLEG_STR(_game_saveload_string, SLE_STR | SLF_ALLOW_CONTROL), - SLE_END() + SLEG_SSTR(_game_saveload_string, SLE_STR | SLF_ALLOW_CONTROL), + SLE_END() }; static void SaveReal_GSTR(const LanguageStrings *ls) { - _game_saveload_string = ls->language; + _game_saveload_string = ls->language.c_str(); _game_saveload_strings = (uint)ls->lines.size(); SlObject(nullptr, _game_language_header); @@ -145,13 +145,13 @@ static void Load_GSTR() _current_data = new GameStrings(); while (SlIterateArray() != -1) { - _game_saveload_string = nullptr; + _game_saveload_string.clear(); SlObject(nullptr, _game_language_header); - std::unique_ptr<LanguageStrings> ls(new LanguageStrings(_game_saveload_string != nullptr ? _game_saveload_string : "")); + LanguageStrings ls(_game_saveload_string); for (uint i = 0; i < _game_saveload_strings; i++) { SlObject(nullptr, _game_language_string); - ls->lines.emplace_back(_game_saveload_string != nullptr ? _game_saveload_string : ""); + ls.lines.emplace_back(_game_saveload_string); } _current_data->raw_strings.push_back(std::move(ls)); @@ -174,7 +174,7 @@ static void Save_GSTR() for (uint i = 0; i < _current_data->raw_strings.size(); i++) { SlSetArrayIndex(i); - SlAutolength((AutolengthProc *)SaveReal_GSTR, _current_data->raw_strings[i].get()); + SlAutolength((AutolengthProc *)SaveReal_GSTR, &_current_data->raw_strings[i]); } } |