summaryrefslogtreecommitdiff
path: root/indra/newview/lllocationhistory.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/lllocationhistory.cpp')
-rw-r--r--indra/newview/lllocationhistory.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/indra/newview/lllocationhistory.cpp b/indra/newview/lllocationhistory.cpp
index 471a0868bc..68143fd1e3 100644
--- a/indra/newview/lllocationhistory.cpp
+++ b/indra/newview/lllocationhistory.cpp
@@ -47,6 +47,12 @@ void LLLocationHistory::addItem(std::string item)
{
static LLUICachedControl<S32> max_items("LocationHistoryMaxSize", 100);
+ std::vector<std::string>::iterator item_iter = std::find(mItems.begin(), mItems.end(), item);
+
+ if (item_iter != mItems.end()) {
+ mItems.erase(item_iter);
+ }
+
mItems.push_back(item);
// If the vector size exceeds the maximum, purge the oldest items.
@@ -56,7 +62,7 @@ void LLLocationHistory::addItem(std::string item)
void LLLocationHistory::removeItems()
{
- mItems.erase(mItems.begin(), mItems.end());
+ mItems.clear();
}