summaryrefslogtreecommitdiff
path: root/protocols/MRA/src/Mra_functions.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/MRA/src/Mra_functions.cpp')
-rw-r--r--protocols/MRA/src/Mra_functions.cpp13
1 files changed, 3 insertions, 10 deletions
diff --git a/protocols/MRA/src/Mra_functions.cpp b/protocols/MRA/src/Mra_functions.cpp
index da0f03fd69..d894a0299f 100644
--- a/protocols/MRA/src/Mra_functions.cpp
+++ b/protocols/MRA/src/Mra_functions.cpp
@@ -526,16 +526,9 @@ MCONTACT CMraProto::MraHContactFromEmail(const CMStringA &szEmail, BOOL bAddIfNe
//not already there: add
if (IsEMailChatAgent(szEmail)) {
CMStringW wszEMail = szEmail;
- if (Chat_NewSession(GCW_CHATROOM, m_szModuleName, wszEMail, wszEMail) == 0) {
- BOOL bChatAdded = FALSE;
- for (hContact = db_find_first(m_szModuleName); hContact; hContact = db_find_next(hContact, m_szModuleName)) {
- if (mraGetStringA(hContact, "ChatRoomID", szEMailLocal)) {
- if (szEMailLocal == szEmail) {
- bChatAdded = TRUE;
- break;
- }
- }
- }
+ GCSessionInfoBase *si = Chat_NewSession(GCW_CHATROOM, m_szModuleName, wszEMail, wszEMail);
+ if (si != 0) {
+ bool bChatAdded = (si->hContact != NULL);
if (bChatAdded == FALSE)
hContact = NULL;
}