[C++]Fix Easy Memory Leak -> ITEM_BLEND

  • Autor subiect #TrC
  • Dată creare
  • Răspunsuri: Răspunsuri 13
  • Vizualizări: Vizualizări 2K

#TrC

Fondator
Membru personal
11 Oct 2017
7.557
6.755
113
Monede Dragon
94
In char_item.cpp cauta :
LPITEM CHARACTER::AutoGiveItem(DWORD dwItemVnum, WORD bCount, int iRarePct, bool bMsg)


Mai jos cauta:
Cod:
if (item->GetType() == ITEM_BLEND)
    {
        for (int i=0; i < INVENTORY_MAX_NUM; i++)
        {
            LPITEM inv_item = GetInventoryItem(i);

            if (inv_item == NULL) continue;

            if (inv_item->GetType() == ITEM_BLEND)
            {
                if (inv_item->GetVnum() == item->GetVnum())
                {
                    if (inv_item->GetSocket(0) == item->GetSocket(0) &&
                            inv_item->GetSocket(1) == item->GetSocket(1) &&
                            inv_item->GetSocket(2) == item->GetSocket(2) &&
                            inv_item->GetCount() < ITEM_MAX_COUNT)
                    {
                        inv_item->SetCount(inv_item->GetCount() + item->GetCount());
                        return inv_item;
                    }
                }
            }
        }
    }


Modifica: