diff options
| author | Oz Linden <oz@lindenlab.com> | 2013-01-04 10:23:22 -0500 |
|---|---|---|
| committer | Oz Linden <oz@lindenlab.com> | 2013-01-04 10:23:22 -0500 |
| commit | b75fc0af897124a05ab3842bdfc60f428d22e051 (patch) | |
| tree | 3cce57b84110720ea15f370b496d1bc6340a154f /indra/newview/llpanelgroupgeneral.cpp | |
| parent | 584b615c3444fdeaa0d41f1d9e839edf1518a310 (diff) | |
| parent | def472b45cb17dd125f802dc3be85450135537a8 (diff) | |
merge up to 3.4.4 beta
Diffstat (limited to 'indra/newview/llpanelgroupgeneral.cpp')
| -rw-r--r-- | indra/newview/llpanelgroupgeneral.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/indra/newview/llpanelgroupgeneral.cpp b/indra/newview/llpanelgroupgeneral.cpp index 51b4d2ea65..993ffb7825 100644 --- a/indra/newview/llpanelgroupgeneral.cpp +++ b/indra/newview/llpanelgroupgeneral.cpp @@ -670,7 +670,6 @@ void LLPanelGroupGeneral::update(LLGroupChange gc) { mMemberProgress = gdatap->mMembers.begin(); mPendingMemberUpdate = TRUE; - mUdpateSessionID.generate(); sSDTime = 0.0f; sElementTime = 0.0f; @@ -730,7 +729,7 @@ void LLPanelGroupGeneral::updateMembers() // If name is not cached, onNameCache() should be called when it is cached and add this member to list. LLAvatarNameCache::get(mMemberProgress->first, boost::bind(&LLPanelGroupGeneral::onNameCache, - this, mUdpateSessionID, member, _1, _2)); + this, gdatap->getMemberVersion(), member, _2)); } } @@ -768,11 +767,15 @@ void LLPanelGroupGeneral::addMember(LLGroupMemberData* member) } } -void LLPanelGroupGeneral::onNameCache(const LLUUID& update_id, LLGroupMemberData* member, const LLUUID& id, const LLAvatarName& av_name) +void LLPanelGroupGeneral::onNameCache(const LLUUID& update_id, LLGroupMemberData* member, const LLAvatarName& av_name) { - if (!member - || update_id != mUdpateSessionID) + LLGroupMgrGroupData* gdatap = LLGroupMgr::getInstance()->getGroupData(mGroupID); + + if (!gdatap + || !gdatap->isMemberDataComplete() + || gdatap->getMemberVersion() != update_id) { + // Stale data return; } |
