From c7cf6ed618caf547367973ceb99e77ceb17a685a Mon Sep 17 00:00:00 2001 From: Ansariel Date: Fri, 15 Apr 2016 16:05:57 +0200 Subject: [PATCH] FIRE-15138: Sharing inventory item sometimes doesn't obey UseLegacyIMLogNames setting --- indra/newview/llimview.cpp | 40 +++++++++++++++++++++++++------------- 1 file changed, 26 insertions(+), 14 deletions(-) diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp index 458617ff2c..121cf8e70d 100755 --- a/indra/newview/llimview.cpp +++ b/indra/newview/llimview.cpp @@ -3192,6 +3192,25 @@ void LLIMMgr::addMessage( } } +// FIRE-15138: Sharing inventory item sometimes doesn't obey UseLegacyIMLogNames setting +void add_system_message_name_cb(LLAvatarName avatar_name, const std::string& message) +{ + std::string session_name = avatar_name.getLegacyName(); + + // [Legacy IM logfile names] + if (gSavedSettings.getBOOL("UseLegacyIMLogNames")) + { + session_name = session_name.substr(0, session_name.find(" Resident"));; + } + else + { + session_name = LLCacheName::buildUsername(session_name); + } + // [Legacy IM logfile names] + LLIMModel::instance().logToFile(session_name, SYSTEM_FROM, LLUUID::null, message); +} +// + void LLIMMgr::addSystemMessage(const LLUUID& session_id, const std::string& message_name, const LLSD& args) { LLUIString message; @@ -3226,21 +3245,14 @@ void LLIMMgr::addSystemMessage(const LLUUID& session_id, const std::string& mess else { - std::string session_name; - // since we select user to share item with - his name is already in cache - gCacheName->getFullName(args["user_id"], session_name); - // [Legacy IM logfile names] + // FIRE-15138: Sharing inventory item sometimes doesn't obey UseLegacyIMLogNames setting + //std::string session_name; + //// since we select user to share item with - his name is already in cache + //gCacheName->getFullName(args["user_id"], session_name); //session_name = LLCacheName::buildUsername(session_name); - if (gSavedSettings.getBOOL("UseLegacyIMLogNames")) - { - session_name = session_name.substr(0, session_name.find(" Resident"));; - } - else - { - session_name = LLCacheName::buildUsername(session_name); - } - // [Legacy IM logfile names] - LLIMModel::instance().logToFile(session_name, SYSTEM_FROM, LLUUID::null, message.getString()); + //LLIMModel::instance().logToFile(session_name, SYSTEM_FROM, LLUUID::null, message.getString()); + LLAvatarNameCache::get(args["user_id"].asUUID(), boost::bind(&add_system_message_name_cb, _2, message.getString())); + // } } }