summaryrefslogtreecommitdiff
path: root/indra/newview/llavatarpropertiesprocessor.cpp
diff options
context:
space:
mode:
authorPalmer Truelson <palmer@lindenlab.com>2009-12-14 11:44:48 -0600
committerPalmer Truelson <palmer@lindenlab.com>2009-12-14 11:44:48 -0600
commitde38b58f37d6c7dadd4a5f15be519cb0bb230fc7 (patch)
treefdfe34a8be0e2086c1e9407931af85f5f8c2fc39 /indra/newview/llavatarpropertiesprocessor.cpp
parentfadfa09e6d3bbff9ebae0aabeacf26a83aae4ad7 (diff)
parenta9e409c7071ba74f01158aa7b876a1ad60161fc4 (diff)
Merging in latest viewer 2
Diffstat (limited to 'indra/newview/llavatarpropertiesprocessor.cpp')
-rw-r--r--indra/newview/llavatarpropertiesprocessor.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/indra/newview/llavatarpropertiesprocessor.cpp b/indra/newview/llavatarpropertiesprocessor.cpp
index 7cda2d31e6..33e5046f50 100644
--- a/indra/newview/llavatarpropertiesprocessor.cpp
+++ b/indra/newview/llavatarpropertiesprocessor.cpp
@@ -440,11 +440,17 @@ void LLAvatarPropertiesProcessor::notifyObservers(const LLUUID& id,void* data, E
// Copy the map (because observers may delete themselves when updated?)
LLAvatarPropertiesProcessor::observer_multimap_t observers = mObservers;
- observer_multimap_t::iterator oi = observers.lower_bound(id);
- observer_multimap_t::iterator end = observers.upper_bound(id);
+ observer_multimap_t::iterator oi = observers.begin();
+ observer_multimap_t::iterator end = observers.end();
for (; oi != end; ++oi)
{
- oi->second->processProperties(data,type);
+ // only notify observers for the same agent, or if the observer
+ // didn't know the agent ID and passed a NULL id.
+ const LLUUID &agent_id = oi->first;
+ if (agent_id == id || agent_id.isNull())
+ {
+ oi->second->processProperties(data,type);
+ }
}
}