aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2016-07-31 17:26:46 +0200
committerShauren <shauren.trinity@gmail.com>2016-07-31 17:26:46 +0200
commit53aecd6f09a81984eb444ba9d6552448bd6f256f (patch)
tree79e77407c106ebf1ede366fe36cafad3cbd5cc86 /src
parentc3a7a9e672df273384992fffb550dae3ca2b67ff (diff)
Core/Loot: Fixed crash happening when looting items into new stack or items with random properties
Closes #17700
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Item/Item.cpp6
-rw-r--r--src/server/game/Entities/Player/Player.cpp2
2 files changed, 3 insertions, 5 deletions
diff --git a/src/server/game/Entities/Item/Item.cpp b/src/server/game/Entities/Item/Item.cpp
index 73b2b1ee31b..2fb7516ffb6 100644
--- a/src/server/game/Entities/Item/Item.cpp
+++ b/src/server/game/Entities/Item/Item.cpp
@@ -778,8 +778,7 @@ void Item::SetItemRandomProperties(int32 randomPropId)
if (randomPropId > 0)
{
- ItemRandomPropertiesEntry const* item_rand = sItemRandomPropertiesStore.LookupEntry(-randomPropId);
- if (sItemRandomPropertiesStore.LookupEntry(randomPropId))
+ if (ItemRandomPropertiesEntry const* item_rand = sItemRandomPropertiesStore.LookupEntry(randomPropId))
{
if (GetInt32Value(ITEM_FIELD_RANDOM_PROPERTIES_ID) != randomPropId)
{
@@ -792,8 +791,7 @@ void Item::SetItemRandomProperties(int32 randomPropId)
}
else
{
- ItemRandomSuffixEntry const* item_rand = sItemRandomSuffixStore.LookupEntry(-randomPropId);
- if (item_rand)
+ if (ItemRandomSuffixEntry const* item_rand = sItemRandomSuffixStore.LookupEntry(-randomPropId))
{
if (GetInt32Value(ITEM_FIELD_RANDOM_PROPERTIES_ID) != randomPropId || !GetItemSuffixFactor())
{
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index d6a2ac35aa2..e1d5c92b80e 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -11544,7 +11544,7 @@ Item* Player::StoreItem(ItemPosCountVec const& dest, Item* pItem, bool update)
lastItem = _StoreItem(pos, pItem, count, true, update);
}
- AutoUnequipChildItem(pItem);
+ AutoUnequipChildItem(lastItem);
return lastItem;
}