aboutsummaryrefslogtreecommitdiff
path: root/src/game/MiscHandler.cpp
diff options
context:
space:
mode:
authorn0n4m3 <none@none>2010-04-11 11:13:08 +0400
committern0n4m3 <none@none>2010-04-11 11:13:08 +0400
commit457df07bd4fd1b394cfcdbb63d5ff76e87fe8c89 (patch)
tree801c95a368b0b2638a3282b9a32300085a36bc80 /src/game/MiscHandler.cpp
parent8db7c06e6b16728eca499d29bb136980d714313b (diff)
Fix quests and auctionhouse.
--HG-- branch : trunk
Diffstat (limited to 'src/game/MiscHandler.cpp')
-rw-r--r--src/game/MiscHandler.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/game/MiscHandler.cpp b/src/game/MiscHandler.cpp
index a6d4452df32..337bf0074f3 100644
--- a/src/game/MiscHandler.cpp
+++ b/src/game/MiscHandler.cpp
@@ -217,8 +217,8 @@ void WorldSession::HandleWhoOpcode(WorldPacket & recv_data)
uint32 gmLevelInWhoList = sWorld.getConfig(CONFIG_GM_LEVEL_IN_WHO_LIST);
WorldPacket data(SMSG_WHO, 50); // guess size
- data << clientcount; // clientcount place holder
- data << clientcount; // clientcount place holder
+ data << uint32(clientcount); // clientcount place holder, listed count
+ data << uint32(clientcount); // clientcount place holder, online count
ObjectAccessor::Guard guard(*HashMapHolder<Player>::GetLock());
HashMapHolder<Player>::MapType& m = ObjectAccessor::Instance().GetPlayers();
@@ -328,8 +328,9 @@ void WorldSession::HandleWhoOpcode(WorldPacket & recv_data)
break;
}
- data.put(0, clientcount); //insert right count
- data.put(sizeof(uint32), clientcount); //insert right count
+ uint32 count = m.size();
+ data.put( 0, clientcount ); // insert right count, listed count
+ data.put( 4, count > 50 ? count : clientcount ); // insert right count, online count
SendPacket(&data);
sLog.outDebug("WORLD: Send SMSG_WHO Message");