diff --git a/indra/llmessage/llavatarnamecache.cpp b/indra/llmessage/llavatarnamecache.cpp
index c9cdbb17f2..77d7200fad 100644
--- a/indra/llmessage/llavatarnamecache.cpp
+++ b/indra/llmessage/llavatarnamecache.cpp
@@ -265,6 +265,18 @@ void LLAvatarNameCache::handleAvNameCacheSuccess(const LLSD &data, const LLSD &h
LLUUID agent_id = row["id"].asUUID();
LLAvatarName av_name;
+ // Contact sets alias
+ if (LGGContactSets::getInstance()->hasPseudonym(agent_id))
+ {
+ LLSD info(row);
+ info["is_display_name_default"] = LGGContactSets::getInstance()->hasDisplayNameRemoved(agent_id);
+ info["display_name"] = LGGContactSets::getInstance()->hasDisplayNameRemoved(agent_id)
+ ? (info["legacy_first_name"].asString() + " " + info["legacy_last_name"].asString())
+ : LGGContactSets::getInstance()->getPseudonym(agent_id);
+ av_name.fromLLSD(info);
+ }
+ else
+ // Contact sets alias
av_name.fromLLSD(row);
// Use expiration time from header
@@ -668,7 +680,8 @@ bool LLAvatarNameCache::get(const LLUUID& agent_id, LLAvatarName *av_name)
if (it != sCache.end())
{
*av_name = it->second;
- if(LGGContactSets::getInstance()->hasPseudonym(agent_id))
+ // Contact sets alias
+ if (LGGContactSets::getInstance()->hasPseudonym(agent_id))
{
LLSD info = av_name->asLLSD();
info["is_display_name_default"] = LGGContactSets::getInstance()->hasDisplayNameRemoved(agent_id);
@@ -677,6 +690,7 @@ bool LLAvatarNameCache::get(const LLUUID& agent_id, LLAvatarName *av_name)
: LGGContactSets::getInstance()->getPseudonym(agent_id);
av_name->fromLLSD(info);
}
+ // Contact sets alias
// re-request name if entry is expired
if (av_name->mExpires < LLFrameTimer::getTotalSeconds())
@@ -723,8 +737,9 @@ LLAvatarNameCache::callback_connection_t LLAvatarNameCache::get(const LLUUID& ag
{
LLAvatarName& av_name = it->second;
LLSD test = av_name.asLLSD();
-
- if(LGGContactSets::getInstance()->hasPseudonym(agent_id))
+
+ // Contact sets alias
+ if (LGGContactSets::getInstance()->hasPseudonym(agent_id))
{
LL_DEBUGS("AvNameCache") << "DN cache hit via alias " << agent_id << LL_ENDL;
LLSD info = av_name.asLLSD();
@@ -734,7 +749,8 @@ LLAvatarNameCache::callback_connection_t LLAvatarNameCache::get(const LLUUID& ag
: LGGContactSets::getInstance()->getPseudonym(agent_id);
av_name.fromLLSD(info);
}
-
+ // Contact sets alias
+
if (av_name.mExpires > LLFrameTimer::getTotalSeconds())
{
// ...name already exists in cache, fire callback now