summaryrefslogtreecommitdiff
path: root/protocols/WhatsApp/src
diff options
context:
space:
mode:
authorGeorge Hazan <george.hazan@gmail.com>2024-07-21 16:17:48 +0300
committerGeorge Hazan <george.hazan@gmail.com>2024-07-21 16:17:48 +0300
commit5fd260b7c4c98bfa2d17a301d832a859c2af1f92 (patch)
tree648dfe9336191c8fafdf7772f376f8e60337388a /protocols/WhatsApp/src
parent17b6a94812b2dbf4af29fb5d84064ceb1c7d393e (diff)
fixes #4555 (Задваиваются контакты протоколов, где есть кэш)
Diffstat (limited to 'protocols/WhatsApp/src')
-rw-r--r--protocols/WhatsApp/src/proto.cpp28
-rw-r--r--protocols/WhatsApp/src/proto.h2
2 files changed, 14 insertions, 16 deletions
diff --git a/protocols/WhatsApp/src/proto.cpp b/protocols/WhatsApp/src/proto.cpp
index 38071deaf6..2dafb64065 100644
--- a/protocols/WhatsApp/src/proto.cpp
+++ b/protocols/WhatsApp/src/proto.cpp
@@ -136,32 +136,30 @@ void WhatsAppProto::RemoveCachedSettings()
m_szJid.Empty();
}
-void WhatsAppProto::OnErase()
-{
- m_bUnregister = true;
- ServerThreadWorker();
-
- RemoveCachedSettings();
-
- DeleteDirectoryTreeW(CMStringW(VARSW(L"%miranda_userdata%")) + L"\\" + _A2T(m_szModuleName), false);
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// OnModulesLoaded emulator for an account
-
-void WhatsAppProto::OnModulesLoaded()
+void WhatsAppProto::OnCacheInit()
{
- // initialize contacts cache
if (!m_szJid.IsEmpty())
m_arUsers.insert(new WAUser(0, m_szJid, false));
for (auto &cc : AccContacts()) {
+ m_bCacheInited = true;
+
CMStringA szId(getMStringA(cc, DBKEY_ID));
if (!szId.IsEmpty())
m_arUsers.insert(new WAUser(cc, szId, isChatRoom(cc)));
}
}
+void WhatsAppProto::OnErase()
+{
+ m_bUnregister = true;
+ ServerThreadWorker();
+
+ RemoveCachedSettings();
+
+ DeleteDirectoryTreeW(CMStringW(VARSW(L"%miranda_userdata%")) + L"\\" + _A2T(m_szModuleName), false);
+}
+
/////////////////////////////////////////////////////////////////////////////////////////
// PROTO_INTERFACE implementation
diff --git a/protocols/WhatsApp/src/proto.h b/protocols/WhatsApp/src/proto.h
index c85bd73088..8d3ebf94cb 100644
--- a/protocols/WhatsApp/src/proto.h
+++ b/protocols/WhatsApp/src/proto.h
@@ -472,9 +472,9 @@ public:
int SetStatus(int iNewStatus) override;
int UserIsTyping(MCONTACT hContact, int type) override;
+ void OnCacheInit() override;
MWindow OnCreateAccMgrUI(MWindow) override;
void OnErase() override;
- void OnModulesLoaded() override;
// Events //////////////////////////////////////////////////////////////////////////////