From e588923bff12e0c46aaab72fdca3e8b5cb211081 Mon Sep 17 00:00:00 2001 From: rubidium42 Date: Sun, 30 May 2021 11:40:54 +0200 Subject: [PATCH] Codechange: add std::string accepting SetDParamStr to ErrorMessageData --- src/error.h | 1 + src/error_gui.cpp | 10 ++++++++++ src/newgrf_debug_gui.cpp | 2 +- src/openttd.cpp | 6 +++--- src/spriteloader/grf.cpp | 2 +- 5 files changed, 16 insertions(+), 5 deletions(-) diff --git a/src/error.h b/src/error.h index 9c445fc48e..06440c127c 100644 --- a/src/error.h +++ b/src/error.h @@ -52,6 +52,7 @@ public: void SetDParam(uint n, uint64 v); void SetDParamStr(uint n, const char *str); + void SetDParamStr(uint n, const std::string &str); void CopyOutDParams(); }; diff --git a/src/error_gui.cpp b/src/error_gui.cpp index 70b403a683..06c0c44e05 100644 --- a/src/error_gui.cpp +++ b/src/error_gui.cpp @@ -164,6 +164,16 @@ void ErrorMessageData::SetDParamStr(uint n, const char *str) this->strings[n] = stredup(str); } +/** + * Set a rawstring parameter. + * @param n Parameter index + * @param str Raw string + */ +void ErrorMessageData::SetDParamStr(uint n, const std::string &str) +{ + this->SetDParamStr(n, str.c_str()); +} + /** Define a queue with errors. */ typedef std::list ErrorList; /** The actual queue with errors. */ diff --git a/src/newgrf_debug_gui.cpp b/src/newgrf_debug_gui.cpp index 9453f5de91..ec221e2f33 100644 --- a/src/newgrf_debug_gui.cpp +++ b/src/newgrf_debug_gui.cpp @@ -828,7 +828,7 @@ struct SpriteAlignerWindow : Window { switch (widget) { case WID_SA_CAPTION: SetDParam(0, this->current_sprite); - SetDParamStr(1, GetOriginFile(this->current_sprite)->GetSimplifiedFilename().c_str()); + SetDParamStr(1, GetOriginFile(this->current_sprite)->GetSimplifiedFilename()); break; case WID_SA_OFFSETS_ABS: diff --git a/src/openttd.cpp b/src/openttd.cpp index fcd8fcd34b..7800fba840 100644 --- a/src/openttd.cpp +++ b/src/openttd.cpp @@ -707,7 +707,7 @@ int openttd_main(int argc, char *argv[]) BaseGraphics::SetSet({}); ErrorMessageData msg(STR_CONFIG_ERROR, STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND); - msg.SetDParamStr(0, graphics_set.c_str()); + msg.SetDParamStr(0, graphics_set); ScheduleErrorMessage(msg); } } @@ -766,7 +766,7 @@ int openttd_main(int argc, char *argv[]) usererror("Failed to find a sounds set. Please acquire a sounds set for OpenTTD. See section 1.4 of README.md."); } else { ErrorMessageData msg(STR_CONFIG_ERROR, STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND); - msg.SetDParamStr(0, sounds_set.c_str()); + msg.SetDParamStr(0, sounds_set); ScheduleErrorMessage(msg); } } @@ -778,7 +778,7 @@ int openttd_main(int argc, char *argv[]) usererror("Failed to find a music set. Please acquire a music set for OpenTTD. See section 1.4 of README.md."); } else { ErrorMessageData msg(STR_CONFIG_ERROR, STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND); - msg.SetDParamStr(0, music_set.c_str()); + msg.SetDParamStr(0, music_set); ScheduleErrorMessage(msg); } } diff --git a/src/spriteloader/grf.cpp b/src/spriteloader/grf.cpp index fae87b87fc..5a49a0c8ab 100644 --- a/src/spriteloader/grf.cpp +++ b/src/spriteloader/grf.cpp @@ -35,7 +35,7 @@ static bool WarnCorruptSprite(const SpriteFile &file, size_t file_pos, int line) { static byte warning_level = 0; if (warning_level == 0) { - SetDParamStr(0, file.GetSimplifiedFilename().c_str()); + SetDParamStr(0, file.GetSimplifiedFilename()); ShowErrorMessage(STR_NEWGRF_ERROR_CORRUPT_SPRITE, INVALID_STRING_ID, WL_ERROR); } DEBUG(sprite, warning_level, "[%i] Loading corrupted sprite from %s at position %i", line, file.GetSimplifiedFilename().c_str(), (int)file_pos);