diff options
| author | Treeston <treeston.mmoc@gmail.com> | 2020-08-31 16:56:56 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-08-31 16:56:56 +0200 |
| commit | 5394b2ef0f1c7b48e8886257b93698358abb575f (patch) | |
| tree | fa864bdefed2097131158b6dd548a9c809c21f62 /src/server/game/Chat/Hyperlinks.cpp | |
| parent | 1e8cb1ed1f374e5aaaafad7b6c283000bce8aaee (diff) | |
UnitTests: Add a first set of item hyperlink tests
Diffstat (limited to 'src/server/game/Chat/Hyperlinks.cpp')
| -rw-r--r-- | src/server/game/Chat/Hyperlinks.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/server/game/Chat/Hyperlinks.cpp b/src/server/game/Chat/Hyperlinks.cpp index 6bc47c8416f..308ec33d46d 100644 --- a/src/server/game/Chat/Hyperlinks.cpp +++ b/src/server/game/Chat/Hyperlinks.cpp @@ -152,7 +152,7 @@ struct LinkValidator<LinkTags::item> { if (!locale && i != DEFAULT_LOCALE) continue; - std::string const& name = (i == DEFAULT_LOCALE) ? data.Item->Name1 : locale->Name[i]; + std::string_view name = (i == DEFAULT_LOCALE) ? data.Item->Name1 : ObjectMgr::GetLocaleString(locale->Name, i); if (name.empty()) continue; if (randomSuffixes) @@ -184,15 +184,17 @@ struct LinkValidator<LinkTags::quest> static bool IsTextValid(QuestLinkData const& data, std::string_view text) { QuestLocale const* locale = sObjectMgr->GetQuestLocale(data.Quest->GetQuestId()); - if (!locale) - return text == data.Quest->GetTitle(); + + if (text == data.Quest->GetTitle()) + return true; for (uint8 i = 0; i < TOTAL_LOCALES; ++i) { - std::string const& name = (i == DEFAULT_LOCALE) ? data.Quest->GetTitle() : locale->Title[i]; - if (name.empty()) + if (i == DEFAULT_LOCALE) continue; - if (text == name) + + std::string_view name = ObjectMgr::GetLocaleString(locale->Title, i); + if (!name.empty() && (text == name)) return true; } |
