summaryrefslogtreecommitdiff
path: root/indra/newview/llimpanel.cpp
diff options
context:
space:
mode:
authorSteven Bennetts <steve@lindenlab.com>2008-07-22 19:01:52 +0000
committerSteven Bennetts <steve@lindenlab.com>2008-07-22 19:01:52 +0000
commit0c0391cc7114bd2e9e4462c40e88814326f61bc2 (patch)
tree2906124fe8371b6336e6f7231cd890d267a75d6d /indra/newview/llimpanel.cpp
parented386ae547c225e352c39e8d14921572ee534b0b (diff)
QAR-758 1.20 Viewer RC 12, 13, 14, 15 -> Release
merge Branch_1-20-14-Viewer-merge -> release Includes Branch_1-20-Viewer-2 through 92456
Diffstat (limited to 'indra/newview/llimpanel.cpp')
-rw-r--r--indra/newview/llimpanel.cpp22
1 files changed, 20 insertions, 2 deletions
diff --git a/indra/newview/llimpanel.cpp b/indra/newview/llimpanel.cpp
index a88a6bbffe..40da1a4f3c 100644
--- a/indra/newview/llimpanel.cpp
+++ b/indra/newview/llimpanel.cpp
@@ -1899,9 +1899,27 @@ void deliver_message(const std::string& utf8_text,
im_session_id);
gAgent.sendReliableMessage();
- if (LLMuteList::getInstance())
+ // If there is a mute list and this is not a group chat...
+ if ( LLMuteList::getInstance() )
{
- LLMuteList::getInstance()->autoRemove(other_participant_id, LLMuteList::AR_IM);
+ // ... the target should not be in our mute list for some message types.
+ // Auto-remove them if present.
+ switch( dialog )
+ {
+ case IM_NOTHING_SPECIAL:
+ case IM_GROUP_INVITATION:
+ case IM_INVENTORY_OFFERED:
+ case IM_SESSION_INVITE:
+ case IM_SESSION_P2P_INVITE:
+ case IM_SESSION_CONFERENCE_START:
+ case IM_SESSION_SEND: // This one is marginal - erring on the side of hearing.
+ case IM_LURE_USER:
+ case IM_GODLIKE_LURE_USER:
+ case IM_FRIENDSHIP_OFFERED:
+ LLMuteList::getInstance()->autoRemove(other_participant_id, LLMuteList::AR_IM);
+ break;
+ default: ; // do nothing
+ }
}
}