diff options
| author | Machiavelli <machiavelli.trinity@gmail.com> | 2011-01-24 23:10:08 +0100 |
|---|---|---|
| committer | Machiavelli <machiavelli.trinity@gmail.com> | 2011-01-24 23:10:08 +0100 |
| commit | 0ad2c90d2259316be875bd1a2e441b97e189df4c (patch) | |
| tree | 41f7a1ac1981f60ca4baad0a143d874ee05b6906 /src/server/game/Server/Protocol | |
| parent | ba204ae3a793653dea585acffb5a36f1bca37d56 (diff) | |
Core/Items: Fix money refund amount. Also fix a possible exploit possibility of redeeming both vendor sellprice and money refund price in one go.
Diffstat (limited to 'src/server/game/Server/Protocol')
| -rwxr-xr-x | src/server/game/Server/Protocol/Handlers/ItemHandler.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/server/game/Server/Protocol/Handlers/ItemHandler.cpp b/src/server/game/Server/Protocol/Handlers/ItemHandler.cpp index 5c33e5c3d56..514461b5dfd 100755 --- a/src/server/game/Server/Protocol/Handlers/ItemHandler.cpp +++ b/src/server/game/Server/Protocol/Handlers/ItemHandler.cpp @@ -529,6 +529,12 @@ void WorldSession::HandleSellItemOpcode(WorldPacket & recv_data) return; } + // prevent selling item for sellprice when the item is still refundable + // this probably happens when right clicking a refundable item, the client sends both + // CMSG_SELL_ITEM and CMSG_REFUND_ITEM (unverified) + if (pItem->HasFlag(ITEM_FIELD_FLAGS, ITEM_FLAG_REFUNDABLE)) + return; // Therefore, no feedback to client + // special case at auto sell (sell all) if (count == 0) { |
