aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2020-08-31 12:48:25 +0200
committerShauren <shauren.trinity@gmail.com>2020-08-31 12:48:25 +0200
commit1e8cb1ed1f374e5aaaafad7b6c283000bce8aaee (patch)
treef8eab2f9e657245928bb407d036056b7efb99da5
parent277b401df45879fa33345878be8864e3ba5aa8c3 (diff)
Core/Chat: Fix achievement and enchant link validation
Closes #25367
-rw-r--r--src/server/game/Chat/Hyperlinks.cpp13
-rw-r--r--src/server/game/Chat/Hyperlinks.h2
2 files changed, 7 insertions, 8 deletions
diff --git a/src/server/game/Chat/Hyperlinks.cpp b/src/server/game/Chat/Hyperlinks.cpp
index ed18f7b380b..6bc47c8416f 100644
--- a/src/server/game/Chat/Hyperlinks.cpp
+++ b/src/server/game/Chat/Hyperlinks.cpp
@@ -244,15 +244,14 @@ struct LinkValidator<LinkTags::enchant>
for (uint8 i = 0; i < TOTAL_LOCALES; ++i)
{
- std::string_view spellName = info->SpellName[i];
std::string_view skillName = skill->DisplayName[i];
+ std::string_view spellName = info->SpellName[i];
// alternate form [Skill Name: Spell Name]
- return (
- (text.length() == (spellName.length() + 2 + skillName.length())) &&
- (text.substr(0, spellName.length()) == spellName) &&
- (text.substr(spellName.length(), 2) == ": ") &&
- (text.substr(spellName.length() + 2) == skillName)
- );
+ if ((text.length() == (skillName.length() + 2 + spellName.length())) &&
+ (text.substr(0, skillName.length()) == skillName) &&
+ (text.substr(skillName.length(), 2) == ": ") &&
+ (text.substr(skillName.length() + 2) == spellName))
+ return true;
}
}
return false;
diff --git a/src/server/game/Chat/Hyperlinks.h b/src/server/game/Chat/Hyperlinks.h
index e21177f0848..5b39cfc7906 100644
--- a/src/server/game/Chat/Hyperlinks.h
+++ b/src/server/game/Chat/Hyperlinks.h
@@ -40,7 +40,7 @@ namespace Trinity::Hyperlinks
struct AchievementLinkData
{
AchievementEntry const* Achievement;
- ObjectGuid::LowType CharacterId;
+ ObjectGuid CharacterId;
bool IsFinished;
uint8 Year;
uint8 Month;