diff options
author | Treeston <treeston.mmoc@gmail.com> | 2018-09-18 01:28:57 +0200 |
---|---|---|
committer | Treeston <treeston.mmoc@gmail.com> | 2018-09-18 01:28:57 +0200 |
commit | e858706270c3059acf6915e7cf655eed0f7e88bb (patch) | |
tree | d70fc5041fff18dee36e03fb93bc72a0142af9e6 /src/server/game/Handlers/ChatHandler.cpp | |
parent | d1a6546ff78d273d1759f9af5a2d26424739710c (diff) |
Core/Chat: Some hyperlink follow-ups:
* Ignore messages containing invalid links again instead of trying to sanitize them. Closes #22451.
* No longer filter messages on the addon channel. Closes #22450.
Diffstat (limited to 'src/server/game/Handlers/ChatHandler.cpp')
-rw-r--r-- | src/server/game/Handlers/ChatHandler.cpp | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/src/server/game/Handlers/ChatHandler.cpp b/src/server/game/Handlers/ChatHandler.cpp index ff0b0c2214c..bab3afae48f 100644 --- a/src/server/game/Handlers/ChatHandler.cpp +++ b/src/server/game/Handlers/ChatHandler.cpp @@ -30,7 +30,6 @@ #include "Group.h" #include "Guild.h" #include "GuildMgr.h" -#include "Hyperlinks.h" #include "Language.h" #include "Log.h" #include "ObjectAccessor.h" @@ -240,6 +239,9 @@ void WorldSession::HandleMessagechatOpcode(WorldPacket& recvData) break; } + if (msg.size() > 255) + return; + // Strip invisible characters for non-addon messages if (sWorld->getBoolConfig(CONFIG_CHAT_FAKE_MESSAGE_PREVENTING) && lang != LANG_ADDON) StripInvisibleChars(msg); @@ -261,20 +263,7 @@ void WorldSession::HandleMessagechatOpcode(WorldPacket& recvData) } } - bool validMessage = Trinity::Hyperlinks::ValidateLinks(msg); - if (!validMessage) - { - TC_LOG_ERROR("network", "Player %s (GUID: %u) sent a chatmessage with an invalid link - corrected", GetPlayer()->GetName().c_str(), - GetPlayer()->GetGUID().GetCounter()); - - if (sWorld->getIntConfig(CONFIG_CHAT_STRICT_LINK_CHECKING_KICK)) - { - KickPlayer(); - return; - } - } - - if (msg.length() > 255) + if ((lang != LANG_ADDON) && !ValidateHyperlinksAndMaybeKick(msg)) return; switch (type) |