summaryrefslogtreecommitdiff
path: root/protocols/JabberG/src/jabber_list.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/JabberG/src/jabber_list.cpp')
-rw-r--r--protocols/JabberG/src/jabber_list.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/protocols/JabberG/src/jabber_list.cpp b/protocols/JabberG/src/jabber_list.cpp
index 25db1afe3e..e73e485194 100644
--- a/protocols/JabberG/src/jabber_list.cpp
+++ b/protocols/JabberG/src/jabber_list.cpp
@@ -87,6 +87,22 @@ void JABBER_RESOURCE_STATUS::Release()
delete this;
}
+void CJabberProto::ListInit(void)
+{
+ for (MCONTACT hContact = db_find_first(m_szModuleName); hContact; hContact = db_find_next(hContact, m_szModuleName)) {
+ if (isChatRoom(hContact)) {
+ ptrT jid(getTStringA(hContact, "ChatRoomID"));
+ if (jid != NULL)
+ ListAdd(LIST_CHATROOM, jid, hContact);
+ }
+ else {
+ ptrT jid(getTStringA(hContact, "jid"));
+ if (jid != NULL)
+ ListAdd(LIST_ROSTER, jid, hContact);
+ }
+ }
+}
+
void CJabberProto::ListWipe(void)
{
mir_cslock lck(m_csLists);