diff --git a/indra/newview/llmutelist.cpp b/indra/newview/llmutelist.cpp
index 5b53a05274233475c0e91e23b58bfbe35153da65..bf1716e18c701999e4f44b8f891d3cf14a787b6e 100644
--- a/indra/newview/llmutelist.cpp
+++ b/indra/newview/llmutelist.cpp
@@ -48,6 +48,7 @@
 
 #include <boost/tokenizer.hpp>
 #include <boost/bind.hpp>
+#include <boost/algorithm/string/replace.hpp>
 
 #include "lldispatcher.h"
 #include "llxfermanager.h"
@@ -180,9 +181,10 @@ LLMuteList::~LLMuteList()
 
 BOOL LLMuteList::isLinden(const std::string& name) const
 {
+	std::string username = boost::replace_all_copy(name, ".", " ");
 	typedef boost::tokenizer<boost::char_separator<char> > tokenizer;
 	boost::char_separator<char> sep(" ");
-	tokenizer tokens(name, sep);
+	tokenizer tokens(username, sep);
 	tokenizer::iterator token_iter = tokens.begin();
 	
 	if (token_iter == tokens.end()) return FALSE;
@@ -190,7 +192,8 @@ BOOL LLMuteList::isLinden(const std::string& name) const
 	if (token_iter == tokens.end()) return FALSE;
 	
 	std::string last_name = *token_iter;
-	return last_name == "Linden";
+	LLStringUtil::toLower(last_name);
+	return last_name == "linden";
 }
 
 static LLVOAvatar* find_avatar(const LLUUID& id)