summaryrefslogtreecommitdiff
path: root/indra/newview/lllocationhistory.cpp
diff options
context:
space:
mode:
authorRoxie Linden <roxie@lindenlab.com>2010-02-25 18:24:07 -0800
committerRoxie Linden <roxie@lindenlab.com>2010-02-25 18:24:07 -0800
commit9b05fecbf6b3d65dae5a010fc35821dc116a44d0 (patch)
tree9c0df85bb3a8b5c4e58655179e1b29ee31594cfc /indra/newview/lllocationhistory.cpp
parent5ed6e0720af1b6cdf1a983e2c040eeb5d8ae33ba (diff)
parentdb4e46e93d06c03520cb7c781b8e41b6d374414d (diff)
automated merge from trunk
Diffstat (limited to 'indra/newview/lllocationhistory.cpp')
-rw-r--r--indra/newview/lllocationhistory.cpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/indra/newview/lllocationhistory.cpp b/indra/newview/lllocationhistory.cpp
index ae1b8f8540..df93930d33 100644
--- a/indra/newview/lllocationhistory.cpp
+++ b/indra/newview/lllocationhistory.cpp
@@ -50,18 +50,19 @@ void LLLocationHistory::addItem(const LLLocationHistoryItem& item) {
// check if this item doesn't duplicate any existing one
location_list_t::iterator item_iter = std::find(mItems.begin(), mItems.end(),item);
- if(item_iter != mItems.end()){
+ if(item_iter != mItems.end()) // if it already exists, erase the old one
+ {
mItems.erase(item_iter);
}
mItems.push_back(item);
- // If the vector size exceeds the maximum, purge the oldest items.
- if ((S32)mItems.size() > max_items) {
- for(location_list_t::iterator i = mItems.begin(); i != mItems.end()-max_items; ++i) {
- mItems.erase(i);
- }
+ // If the vector size exceeds the maximum, purge the oldest items (at the start of the mItems vector).
+ if ((S32)mItems.size() > max_items)
+ {
+ mItems.erase(mItems.begin(), mItems.end()-max_items);
}
+ llassert((S32)mItems.size() <= max_items);
}
/*