aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/llviewermessage.cpp
diff options
context:
space:
mode:
authorKakurady2009-10-16 13:55:54 -0400
committerMcCabe Maxsted2009-10-16 16:43:59 -0700
commit4cf2b9abe06996ea5ca1ee68d9008b3bd4d08dc1 (patch)
treef6913085ee703220c77c66c36e7fe6612ef8699a /linden/indra/newview/llviewermessage.cpp
parentContinue to fix unable to compile on CP936 (diff)
downloadmeta-impy-4cf2b9abe06996ea5ca1ee68d9008b3bd4d08dc1.zip
meta-impy-4cf2b9abe06996ea5ca1ee68d9008b3bd4d08dc1.tar.gz
meta-impy-4cf2b9abe06996ea5ca1ee68d9008b3bd4d08dc1.tar.bz2
meta-impy-4cf2b9abe06996ea5ca1ee68d9008b3bd4d08dc1.tar.xz
Fix muting objects with same name as avatar mutes ScriptDialogs from avatar.
ScriptDialogs from muted objects or groups will not be displayed either.
Diffstat (limited to 'linden/indra/newview/llviewermessage.cpp')
-rw-r--r--linden/indra/newview/llviewermessage.cpp20
1 files changed, 17 insertions, 3 deletions
diff --git a/linden/indra/newview/llviewermessage.cpp b/linden/indra/newview/llviewermessage.cpp
index c403e3e..eeef114 100644
--- a/linden/indra/newview/llviewermessage.cpp
+++ b/linden/indra/newview/llviewermessage.cpp
@@ -5479,18 +5479,32 @@ void process_script_dialog(LLMessageSystem* msg, void**)
5479 5479
5480 // Don't show lldialog boxes from muted avs -- McCabe 5480 // Don't show lldialog boxes from muted avs -- McCabe
5481 std::string agent_name = first_name + " " + last_name; 5481 std::string agent_name = first_name + " " + last_name;
5482 if (!first_name.empty()) 5482 if (!last_name.empty())
5483 { 5483 {
5484 std::vector<LLMute> mutes = LLMuteList::getInstance()->getMutes(); 5484 std::vector<LLMute> mutes = LLMuteList::getInstance()->getMutes();
5485 for (U32 i = 0; i < mutes.size(); i++) 5485 for (U32 i = 0; i < mutes.size(); i++)
5486 { 5486 {
5487 if (mutes[i].mName == agent_name) 5487 //this is almost like saying (mutes[i].mType != LLMute::Object), but more verbose ... -Kaku
5488 if (
5489 ((mutes[i].mType == LLMute::AGENT)
5490 && (mutes[i].mName == agent_name))
5491 || ((mutes[i].mType == LLMute::GROUP)
5492 && (mutes[i].mName == last_name))
5493 || ((mutes[i].mType == LLMute::BY_NAME)
5494 //don't mute groups by name in case a group has a last name as a group name.
5495 && ((mutes[i].mName == agent_name)))
5496 )
5488 { 5497 {
5489 delete info; 5498 delete info;
5490 return; 5499 return;
5491 } 5500 }
5492 } 5501 }
5493 } 5502 }
5503 // or Scriptdialog boxes from muted objects -- Kakurady
5504 if (LLMuteList::getInstance()->isMuted(info->mObjectID, title)){
5505 delete info;
5506 return;
5507 }
5494 5508
5495 // unused for now 5509 // unused for now
5496 LLUUID image_id; 5510 LLUUID image_id;