diff --git a/indra/newview/llfloateravatarlist.cpp b/indra/newview/llfloateravatarlist.cpp index 95902a762..566159cc1 100644 --- a/indra/newview/llfloateravatarlist.cpp +++ b/indra/newview/llfloateravatarlist.cpp @@ -646,6 +646,8 @@ void LLFloaterAvatarList::updateAvatarSorting() } } +bool mm_getMarkerColor(const LLUUID&, LLColor4&); + /** * Redraws the avatar list * Only does anything if the avatar list is visible. @@ -738,7 +740,8 @@ void LLFloaterAvatarList::refreshAvatarList() LLColor4 color = sDefaultListText; //Lindens are always more Linden than your friend, make that take precedence - if (LLMuteList::getInstance()->isLinden(av_id)) + if (mm_getMarkerColor(av_id, color)) {} + else if (LLMuteList::getInstance()->isLinden(av_id)) { static const LLCachedControl ascent_linden_color("AscentLindenColor", LLColor4(0.f,0.f,1.f,1.f)); color = ascent_linden_color; diff --git a/indra/newview/llnetmap.cpp b/indra/newview/llnetmap.cpp index ce43bd8f8..d5e0c8e5a 100644 --- a/indra/newview/llnetmap.cpp +++ b/indra/newview/llnetmap.cpp @@ -215,6 +215,13 @@ std::size_t hash_value(const LLUUID& uuid) return (std::size_t)uuid.getCRC32(); } boost::unordered_map mm_MarkerColors; +bool mm_getMarkerColor(const LLUUID& id, LLColor4& color) +{ + boost::unordered_map::const_iterator it = mm_MarkerColors.find(id); + if (it == mm_MarkerColors.end()) return false; + color = it->second; + return true; +} void LLNetMap::mm_setcolor(LLUUID key,LLColor4 col) { @@ -574,11 +581,7 @@ void LLNetMap::draw() LLUUID estate_owner = avatar_region ? avatar_region->getOwner() : LLUUID::null; // MOYMOD Minimap custom av colors. - boost::unordered_map::const_iterator it = mm_MarkerColors.find(uuid); - if(it != mm_MarkerColors.end()) - { - color = it->second; - } + if (mm_getMarkerColor(uuid, color)) {} //Lindens are always more Linden than your friend, make that take precedence else if (LLMuteList::getInstance()->isLinden(uuid)) { diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 901340a57..3d14f488c 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -910,6 +910,7 @@ const LLUUID SHClientTagMgr::getClientID(const LLVOAvatar* pAvatar) const } return tag.asUUID(); } +bool mm_getMarkerColor(const LLUUID&, LLColor4&); bool SHClientTagMgr::getClientColor(const LLVOAvatar* pAvatar, bool check_status, LLColor4& color) const { static const LLCachedControl ascent_use_status_colors("AscentUseStatusColors",true); @@ -918,6 +919,7 @@ bool SHClientTagMgr::getClientColor(const LLVOAvatar* pAvatar, bool check_status if(check_status && ascent_use_status_colors && !pAvatar->isSelf()) { + if (mm_getMarkerColor(pAvatar->getID(), color)) return true; LLViewerRegion* parent_estate = LLWorld::getInstance()->getRegionFromPosGlobal(pAvatar->getPositionGlobal()); if(LLMuteList::getInstance()->isLinden(pAvatar->getFullname())) {