diff options
Diffstat (limited to 'src/map/trade.cpp')
-rw-r--r-- | src/map/trade.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/map/trade.cpp b/src/map/trade.cpp index 7fbfbec..86d876f 100644 --- a/src/map/trade.cpp +++ b/src/map/trade.cpp @@ -260,8 +260,11 @@ void trade_tradeok(dumb_ptr<map_session_data> sd) for (trade_i = 0; trade_i < TRADE_MAX; trade_i++) { + int index = sd->deal_item_index[trade_i]; + if (index < 2 || index >= MAX_INVENTORY + 2) + continue; if (sd->deal_item_amount[trade_i] > - sd->status.inventory[sd->deal_item_index[trade_i] - 2].amount + sd->status.inventory[index - 2].amount || sd->deal_item_amount[trade_i] < 0) { trade_tradecancel(sd); |