From 650a92dc9fcbcf794000e59fad2cd8df8ebf9fd3 Mon Sep 17 00:00:00 2001 From: ariel- Date: Mon, 5 Feb 2018 13:45:52 -0300 Subject: Core/Channel: properly notify client about invalid channel names Closes #16190 --- src/server/game/Chat/Channels/ChannelMgr.cpp | 2 +- src/server/game/Handlers/ChannelHandler.cpp | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) (limited to 'src/server') diff --git a/src/server/game/Chat/Channels/ChannelMgr.cpp b/src/server/game/Chat/Channels/ChannelMgr.cpp index 7e56d6584d5..3deb2ee7221 100644 --- a/src/server/game/Chat/Channels/ChannelMgr.cpp +++ b/src/server/game/Chat/Channels/ChannelMgr.cpp @@ -16,8 +16,8 @@ * with this program. If not, see . */ -#include "Channel.h" #include "ChannelMgr.h" +#include "Channel.h" #include "DBCStores.h" #include "Player.h" #include "World.h" diff --git a/src/server/game/Handlers/ChannelHandler.cpp b/src/server/game/Handlers/ChannelHandler.cpp index f373edf244e..c4da770623d 100644 --- a/src/server/game/Handlers/ChannelHandler.cpp +++ b/src/server/game/Handlers/ChannelHandler.cpp @@ -49,11 +49,13 @@ void WorldSession::HandleJoinChannel(WorldPacket& recvPacket) return; } - if (channelName.empty()) - return; - - if (isdigit(channelName[0])) + if (channelName.empty() || isdigit(channelName[0])) + { + WorldPacket data(SMSG_CHANNEL_NOTIFY, 1 + channelName.size()); + data << uint8(CHAT_INVALID_NAME_NOTICE) << channelName; + SendPacket(&data); return; + } if (ChannelMgr* cMgr = ChannelMgr::forTeam(GetPlayer()->GetTeam())) if (Channel* channel = cMgr->GetJoinChannel(channelId, channelName, zone)) -- cgit v1.2.3