* fixed delayed CMSG_CHANNEL_LIST opcode spam to server if a channel list contained some guids which names were not yet known.
This commit is contained in:
parent
aa0450df9e
commit
8af84b8c87
@ -229,16 +229,18 @@ void Channel::HandleListRequest(WorldPacket& recvPacket)
|
|||||||
for(uint32 i = 0; i < size; i++)
|
for(uint32 i = 0; i < size; i++)
|
||||||
{
|
{
|
||||||
recvPacket >> guid >> mode;
|
recvPacket >> guid >> mode;
|
||||||
// all player names in this packet must be known before
|
// all player names in this packet must be known before we can continue
|
||||||
if(_worldSession->GetOrRequestPlayerName(guid).empty())
|
if(_worldSession->GetOrRequestPlayerName(guid).empty())
|
||||||
{
|
{
|
||||||
_worldSession->_DelayWorldPacket(recvPacket, uint32(_worldSession->GetLagMS() * 1.2f));
|
|
||||||
must_delay = true;
|
must_delay = true;
|
||||||
}
|
}
|
||||||
cpl[guid] = mode;
|
cpl[guid] = mode;
|
||||||
}
|
}
|
||||||
if(must_delay)
|
if(must_delay)
|
||||||
|
{
|
||||||
|
_worldSession->_DelayWorldPacket(recvPacket, uint32(_worldSession->GetLagMS() * 1.2f));
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// store list of GUIDs in: @ChannelList - see below
|
// store list of GUIDs in: @ChannelList - see below
|
||||||
DefList *l = _worldSession->GetInstance()->GetScripts()->lists.Get("@ChannelList");
|
DefList *l = _worldSession->GetInstance()->GetScripts()->lists.Get("@ChannelList");
|
||||||
|
|||||||
@ -312,7 +312,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath=".\shared\Auth\Hmac.h">
|
RelativePath=".\shared\Auth\Hmac.h">
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath=".\shared\Auth\md5.c">
|
RelativePath=".\shared\Auth\md5.c">
|
||||||
</File>
|
</File>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user