rendered paste bodyIndex: src/server/bulkobjects/pscharinventory.cpp===================================================================--- src/server/bulkobjects/pscharinventory.cpp (revision 5654)+++ src/server/bulkobjects/pscharinventory.cpp (working copy)@@ -340,6 +340,27 @@ void psCharacterInventory::AddStorageItem(psItem *item) {+ if (item->GetIsStackable())+ {+ csArray<psItem*>::Iterator it = storageInventory.GetIterator();+ while (it.HasNext())+ {+ psItem * storedItem = it.Next();+ if (storedItem->CheckStackableWith(item, true, true)) // item fits completely+ {+ storedItem->CombineStack(item);+ return;+ }+ else if (storedItem->GetStackCount() != MAX_STACK_COUNT && storedItem->CheckStackableWith(item, true, false)) // item fits only partially+ {+ psItem * split = item->SplitStack(MAX_STACK_COUNT - storedItem->GetStackCount());+ if (split)+ storedItem->CombineStack(split);+ }+ }+ }++ // if it didn't fit completely, yet, push it as new one storageInventory.Push(item); }