diff options
author | Shauren <none@none> | 2010-07-20 21:37:15 +0200 |
---|---|---|
committer | Shauren <none@none> | 2010-07-20 21:37:15 +0200 |
commit | 66e068436b6b4573de3c9574eba862679da4938f (patch) | |
tree | cc998fa97f6f1030795de478ee20dac0a381940a | |
parent | a7c52864b45a3142704f93aed85bfbbde4627670 (diff) |
Fixed item duplication exploit
Closes issue #3035.
--HG--
branch : trunk
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 5a8cb7b66fc..7a63a794456 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -12324,6 +12324,13 @@ void Player::SwapItem(uint16 src, uint16 dst) return; } + // prevent equipping bag in the same slot from its inside + if (IsBagPos(dst) && srcbag == dstslot) + { + SendEquipError(EQUIP_ERR_ITEMS_CANT_BE_SWAPPED, pSrcItem, pDstItem); + return; + } + // DST checks if (pDstItem) |