From b390d74b9c6e0d2e39c8a09aa9e6889c13c436ea Mon Sep 17 00:00:00 2001 From: Shyotl Date: Sat, 9 Apr 2011 00:30:15 -0500 Subject: [PATCH] Name tag should now update consistently upon change via namefromchat bridge --- indra/newview/llviewermessage.cpp | 14 +++++--------- indra/newview/llvoavatar.cpp | 4 +++- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp index ab670ffe9..abb01c9b5 100644 --- a/indra/newview/llviewermessage.cpp +++ b/indra/newview/llviewermessage.cpp @@ -3077,15 +3077,11 @@ void process_chat_from_simulator(LLMessageSystem *msg, void **user_data) avatar->clearNameFromChat(); } } else { - LLViewerObject *obj = gObjectList.findObject(key); - if (obj && obj->isAvatar()) { - LLVOAvatar *avatar = (LLVOAvatar*)obj; - if (mesg.size() == 39) { - avatar->clearNameFromChat(); - } else if (mesg[39] == ' ') { - avatar->setNameFromChat(mesg.substr(40)); - } - } + LLVOAvatar *avatar = gObjectList.findAvatar(key); + if (mesg.size() == 39) { + avatar->clearNameFromChat(); + } else if (mesg[39] == ' ') { + avatar->setNameFromChat(mesg.substr(40)); } return; } else if (mesg.substr(2, 9) == " floater ") { diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index bf819e186..ebbb479b7 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -3881,7 +3881,8 @@ void LLVOAvatar::idleUpdateNameTag(const LLVector3& root_pos_last) (title && mTitle != title->getString()) || (is_away != mNameAway || is_busy != mNameBusy || is_muted != mNameMute) || is_appearance != mNameAppearance || client != mClientName || - mNameFromAttachment != nameplate) + mNameFromAttachment != nameplate || + mNameFromChatChanged) { mRenderedName = usedname; mNameFromAttachment = nameplate; @@ -3933,6 +3934,7 @@ void LLVOAvatar::idleUpdateNameTag(const LLVector3& root_pos_last) line = "%f\n%l"; } } + mNameFromChatChanged = false; // replace first name, last name and title while ((index = line.find("%f")) != std::string::npos)