From 5394b2ef0f1c7b48e8886257b93698358abb575f Mon Sep 17 00:00:00 2001 From: Treeston Date: Mon, 31 Aug 2020 16:56:56 +0200 Subject: UnitTests: Add a first set of item hyperlink tests --- src/server/game/Chat/Hyperlinks.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'src/server/game/Chat/Hyperlinks.cpp') 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 { 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 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; } -- cgit v1.2.3