diff options
author | Dehravor <dehravor@gmail.com> | 2014-02-09 10:51:11 +0100 |
---|---|---|
committer | Dehravor <dehravor@gmail.com> | 2014-02-09 10:51:11 +0100 |
commit | 916d84bdca52d04b8a808cc3e519ddc1ee3c2ffe (patch) | |
tree | a616b92805f9be6c2a6f11a9c25986ef47f1de41 /src | |
parent | aaa4b3a1240b7b25a4050a7c6d3dc5184f3e581d (diff) |
Core/Group: Add sanity checks to CMSG_LOOT_METHOD's handler
If lootMethod or lootThreshold is invalid, portrait menus become unusable to the entire raid.
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Handlers/GroupHandler.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/server/game/Handlers/GroupHandler.cpp b/src/server/game/Handlers/GroupHandler.cpp index 6404d3c8e41..3b0ee4e24be 100644 --- a/src/server/game/Handlers/GroupHandler.cpp +++ b/src/server/game/Handlers/GroupHandler.cpp @@ -425,6 +425,12 @@ void WorldSession::HandleLootMethodOpcode(WorldPacket& recvData) /** error handling **/ if (!group->IsLeader(GetPlayer()->GetGUID())) return; + + if (lootMethod > NEED_BEFORE_GREED) + return; + + if (lootThreshold < ITEM_QUALITY_UNCOMMON || lootThreshold > ITEM_QUALITY_ARTIFACT) + return; /********************/ // everything's fine, do it |