aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Chat/LanguageMgr.cpp
diff options
context:
space:
mode:
authorTreeston <treeston.mmoc@gmail.com>2020-08-28 00:11:16 +0200
committerShauren <shauren.trinity@gmail.com>2022-02-04 00:27:14 +0100
commit9f97fdd31a3b9a06b6acfa1101d105e43687e824 (patch)
tree027f81c18e7733fa3554cf1dd704a0900d254725 /src/server/game/Chat/LanguageMgr.cpp
parent6e45c371c4098942e0085a71577a07b17725ee93 (diff)
Core/Common: Tokenizer -> Trinity::Tokenize (PR: #25327)
(cherry picked from commit 534a2388b7c662c8796aabb1ec8cb424879799b6)
Diffstat (limited to 'src/server/game/Chat/LanguageMgr.cpp')
-rw-r--r--src/server/game/Chat/LanguageMgr.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/server/game/Chat/LanguageMgr.cpp b/src/server/game/Chat/LanguageMgr.cpp
index ec2a65f9013..c30cfa9b965 100644
--- a/src/server/game/Chat/LanguageMgr.cpp
+++ b/src/server/game/Chat/LanguageMgr.cpp
@@ -216,13 +216,12 @@ std::string LanguageMgr::Translate(std::string const& msg, uint32 language, Loca
std::string result;
result.reserve(textToTranslate.length());
- Tokenizer tokens(textToTranslate, ' ');
- for (char const* str : tokens)
+ for (std::string_view str : Trinity::Tokenize(textToTranslate, ' ', false))
{
- uint32 wordLen = std::min(18u, uint32(strlen(str)));
+ uint32 wordLen = std::min(18u, uint32(str.length()));
if (LanguageMgr::WordList const* wordGroup = FindWordGroup(language, wordLen))
{
- uint32 wordHash = SStrHash(str, true);
+ uint32 wordHash = SStrHash(str.data(), true);
uint8 idxInsideGroup = wordHash % wordGroup->size();
char const* replacementWord = (*wordGroup)[idxInsideGroup];
@@ -233,7 +232,7 @@ std::string LanguageMgr::Translate(std::string const& msg, uint32 language, Loca
case LOCALE_zhCN:
case LOCALE_zhTW:
{
- size_t length = std::min(strlen(str), strlen(replacementWord));
+ size_t length = std::min(str.length(), strlen(replacementWord));
for (size_t i = 0; i < length; ++i)
{
if (str[i] >= 'A' && str[i] <= 'Z')