diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp
index 6a8832b64df6ae46c9b2220c07cb550dbc4b2168..a1ff0f37479e4f1e03aa86c85e071c8e61e3dd65 100644
--- a/indra/newview/llviewermessage.cpp
+++ b/indra/newview/llviewermessage.cpp
@@ -2627,7 +2627,18 @@ void process_chat_from_simulator(LLMessageSystem *msg, void **user_data)
 	// IDEVO Correct for new-style "Resident" names
 	if (chat.mSourceType == CHAT_SOURCE_AGENT)
 	{
-		chat.mFromName = LLCacheName::cleanFullName(from_name);
+		// JAMESDEBUG - I don't know if it's OK to change this here, if 
+		// anything downstream does lookups by name, for instance
+		LLAvatarName av_name;
+		if (LLAvatarNameCache::useDisplayNames()
+			&& LLAvatarNameCache::get(from_id, &av_name))
+		{
+			chat.mFromName = av_name.mDisplayName;
+		}
+		else
+		{
+			chat.mFromName = LLCacheName::cleanFullName(from_name);
+		}
 	}
 	else
 	{