fixed a segfault in case of wrong input from network on the server (reported by spongie)
authorPerttu Ahola <celeron55@gmail.com>
Sun, 19 Jun 2011 16:40:41 +0000 (19:40 +0300)
committerPerttu Ahola <celeron55@gmail.com>
Sun, 19 Jun 2011 16:40:41 +0000 (19:40 +0300)
src/inventory.cpp

index 03df98de6fd2390db6bd5178ce06fbf9e194ebe5..0c76ed84555ff4ed436d787a602937a297bb70ce 100644 (file)
@@ -470,7 +470,7 @@ InventoryItem * InventoryList::addItem(u32 i, InventoryItem *newitem)
        //setDirty(true);
        
        // If it is an empty position, it's an easy job.
-       InventoryItem *to_item = m_items[i];
+       InventoryItem *to_item = getItem(i);
        if(to_item == NULL)
        {
                m_items[i] = newitem;
@@ -502,7 +502,7 @@ InventoryItem * InventoryList::addItem(u32 i, InventoryItem *newitem)
 bool InventoryList::itemFits(u32 i, InventoryItem *newitem)
 {
        // If it is an empty position, it's an easy job.
-       InventoryItem *to_item = m_items[i];
+       InventoryItem *to_item = getItem(i);
        if(to_item == NULL)
        {
                return true;
@@ -528,7 +528,7 @@ InventoryItem * InventoryList::takeItem(u32 i, u32 count)
        
        //setDirty(true);
 
-       InventoryItem *item = m_items[i];
+       InventoryItem *item = getItem(i);
        // If it is an empty position, return NULL
        if(item == NULL)
                return NULL;