summaryrefslogtreecommitdiff
path: root/indra/newview/llremoteparcelrequest.cpp
diff options
context:
space:
mode:
authorleyla_linden <none@none>2010-12-03 15:44:39 -0800
committerleyla_linden <none@none>2010-12-03 15:44:39 -0800
commit35c67ca7fb9964ee3eabeb66ec441ded94256951 (patch)
treee70ab4204e8284f201ada83dca884ad8091146bb /indra/newview/llremoteparcelrequest.cpp
parent35d50fe36e83a0b76816c693dc89219041393ae5 (diff)
parent32db8988ffab8778de106dc769228089bec8aad1 (diff)
Merge
Diffstat (limited to 'indra/newview/llremoteparcelrequest.cpp')
-rw-r--r--indra/newview/llremoteparcelrequest.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/indra/newview/llremoteparcelrequest.cpp b/indra/newview/llremoteparcelrequest.cpp
index 10d4452ed2..0dff087553 100644
--- a/indra/newview/llremoteparcelrequest.cpp
+++ b/indra/newview/llremoteparcelrequest.cpp
@@ -78,10 +78,11 @@ void LLRemoteParcelRequestResponder::error(U32 status, const std::string& reason
void LLRemoteParcelInfoProcessor::addObserver(const LLUUID& parcel_id, LLRemoteParcelInfoObserver* observer)
{
observer_multimap_t::iterator it;
+ observer_multimap_t::iterator start = mObservers.lower_bound(parcel_id);
observer_multimap_t::iterator end = mObservers.upper_bound(parcel_id);
// Check if the observer is already in observers list for this UUID
- for(it = mObservers.find(parcel_id); it != end; ++it)
+ for(it = start; it != end; ++it)
{
if (it->second.get() == observer)
{
@@ -100,9 +101,10 @@ void LLRemoteParcelInfoProcessor::removeObserver(const LLUUID& parcel_id, LLRemo
}
observer_multimap_t::iterator it;
+ observer_multimap_t::iterator start = mObservers.lower_bound(parcel_id);
observer_multimap_t::iterator end = mObservers.upper_bound(parcel_id);
- for(it = mObservers.find(parcel_id); it != end; ++it)
+ for(it = start; it != end; ++it)
{
if (it->second.get() == observer)
{
@@ -139,9 +141,10 @@ void LLRemoteParcelInfoProcessor::processParcelInfoReply(LLMessageSystem* msg, v
deadlist_t dead_iters;
observer_multimap_t::iterator oi;
+ observer_multimap_t::iterator start = observers.lower_bound(parcel_data.parcel_id);
observer_multimap_t::iterator end = observers.upper_bound(parcel_data.parcel_id);
- for (oi = observers.find(parcel_data.parcel_id); oi != end; ++oi)
+ for (oi = start; oi != end; ++oi)
{
LLRemoteParcelInfoObserver * observer = oi->second.get();
if(observer)