diff --git a/indra/newview/llconversationlog.cpp b/indra/newview/llconversationlog.cpp
index 772753e7d1158a7eadca08513bcd9d87cfa5186c..fb654985e587702e6fc187e1f705d1fb966fcefa 100644
--- a/indra/newview/llconversationlog.cpp
+++ b/indra/newview/llconversationlog.cpp
@@ -229,7 +229,7 @@ void LLConversationLog::logConversation(const LLUUID& session_id, BOOL has_offli
 	const LLIMModel::LLIMSession* session = LLIMModel::instance().findIMSession(session_id);
 	LLConversation* conversation = findConversation(session);
 
-	if (session)
+	if (session && session->mOtherParticipantID != gAgentID)
 	{
     	if (conversation)
 		{
diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp
index 5dd5704916f9a741a17034ac0927e6d5d0a2f606..3f9fb02368f0e1a9f374065b76bc1e2b883c2eb5 100644
--- a/indra/newview/llimview.cpp
+++ b/indra/newview/llimview.cpp
@@ -2545,12 +2545,6 @@ void LLIMMgr::addMessage(
 {
 	LLUUID other_participant_id = target_id;
 
-	// Agent can't create session with himself
-	if (other_participant_id == gAgentID)
-	{
-		return;
-	}
-
 	LLUUID new_session_id = session_id;
 	if (new_session_id.isNull())
 	{