diff options
author | Michael Lutz <michi@icosahedron.de> | 2020-05-17 23:31:51 +0200 |
---|---|---|
committer | Michael Lutz <michi@icosahedron.de> | 2020-05-21 20:02:34 +0200 |
commit | c082f570cebd237c35de9caa08fcc84a9c44e95d (patch) | |
tree | 7e0e85e1a3f14db83a82e4861899578c2383529d /src/newgrf.cpp | |
parent | 808c8198d5ab61c457d0351ff7971b75ee17c10a (diff) | |
download | openttd-c082f570cebd237c35de9caa08fcc84a9c44e95d.tar.xz |
Codechange: Use std::string when translating TTDP NewGRF string codes.
Diffstat (limited to 'src/newgrf.cpp')
-rw-r--r-- | src/newgrf.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/newgrf.cpp b/src/newgrf.cpp index 4ada53a0a..3f621e5c9 100644 --- a/src/newgrf.cpp +++ b/src/newgrf.cpp @@ -6895,7 +6895,7 @@ static void GRFLoadError(ByteReader *buf) if (buf->HasData()) { const char *message = buf->ReadString(); - error->custom_message = TranslateTTDPatchCodes(_cur.grffile->grfid, lang, true, message, nullptr, SCC_RAW_STRING_POINTER); + error->custom_message = stredup(TranslateTTDPatchCodes(_cur.grffile->grfid, lang, true, message, SCC_RAW_STRING_POINTER).c_str()); } else { grfmsg(7, "GRFLoadError: No custom message supplied."); error->custom_message = stredup(""); @@ -6907,7 +6907,7 @@ static void GRFLoadError(ByteReader *buf) if (buf->HasData()) { const char *data = buf->ReadString(); - error->data = TranslateTTDPatchCodes(_cur.grffile->grfid, lang, true, data); + error->data = stredup(TranslateTTDPatchCodes(_cur.grffile->grfid, lang, true, data).c_str()); } else { grfmsg(7, "GRFLoadError: No message data supplied."); error->data = stredup(""); @@ -7456,9 +7456,8 @@ static void FeatureTownName(ByteReader *buf) const char *name = buf->ReadString(); - char *lang_name = TranslateTTDPatchCodes(grfid, lang, false, name); - grfmsg(6, "FeatureTownName: lang 0x%X -> '%s'", lang, lang_name); - free(lang_name); + std::string lang_name = TranslateTTDPatchCodes(grfid, lang, false, name); + grfmsg(6, "FeatureTownName: lang 0x%X -> '%s'", lang, lang_name.c_str()); townname->name[nb_gen] = AddGRFString(grfid, id, lang, new_scheme, false, name, STR_UNDEFINED); @@ -7500,7 +7499,7 @@ static void FeatureTownName(ByteReader *buf) townname->partlist[id][i].parts[j].data.id = ref_id; } else { const char *text = buf->ReadString(); - townname->partlist[id][i].parts[j].data.text = TranslateTTDPatchCodes(grfid, 0, false, text); + townname->partlist[id][i].parts[j].data.text = stredup(TranslateTTDPatchCodes(grfid, 0, false, text).c_str()); grfmsg(6, "FeatureTownName: part %d, text %d, '%s' (with probability %d)", i, j, townname->partlist[id][i].parts[j].data.text, prob); } townname->partlist[id][i].parts[j].prob = prob; |