summaryrefslogtreecommitdiff
path: root/indra/newview/llinventoryitemslist.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llinventoryitemslist.cpp')
-rw-r--r--indra/newview/llinventoryitemslist.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/indra/newview/llinventoryitemslist.cpp b/indra/newview/llinventoryitemslist.cpp
index f94515d242..750cdfb678 100644
--- a/indra/newview/llinventoryitemslist.cpp
+++ b/indra/newview/llinventoryitemslist.cpp
@@ -336,7 +336,9 @@ LLInventoryItemsList::LLInventoryItemsList(const LLInventoryItemsList::Params& p
// virtual
LLInventoryItemsList::~LLInventoryItemsList()
-{}
+{
+ gIdleCallbacks.deleteFunction(idle, this);
+}
void LLInventoryItemsList::refreshList(const LLInventoryModel::item_array_t item_array)
{
@@ -386,7 +388,7 @@ void LLInventoryItemsList::refresh()
computeDifference(getIDs(), added_items, removed_items);
bool add_limit_exceeded = false;
- unsigned nadded = 0;
+ unsigned int nadded = 0;
uuid_vec_t::const_iterator it = added_items.begin();
for( ; added_items.end() != it; ++it)
@@ -398,8 +400,12 @@ void LLInventoryItemsList::refresh()
}
LLViewerInventoryItem* item = gInventory.getItem(*it);
// Do not rearrange items on each adding, let's do that on filter call
- addNewItem(item, false);
- ++nadded;
+ llassert(item);
+ if (item)
+ {
+ addNewItem(item, false);
+ ++nadded;
+ }
}
it = removed_items.begin();