diff options
author | George Hazan <george.hazan@gmail.com> | 2023-12-23 15:10:58 +0300 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2023-12-23 15:10:58 +0300 |
commit | 7d792ed6fb393548f886d30c2fa69f0a8555d01b (patch) | |
tree | b5ab0bed484eae85ae01c1ecbd63c7c00c537467 /protocols/ICQ-WIM/src/poll.cpp | |
parent | 371ac8f6da293e5f4b69d51e3bcb511ba5c1b6e1 (diff) |
fixes #3803 (ICQ: Нет уведомлений о новых сообщениях, если я пишу с другого клиента самому себе)
Diffstat (limited to 'protocols/ICQ-WIM/src/poll.cpp')
-rw-r--r-- | protocols/ICQ-WIM/src/poll.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/protocols/ICQ-WIM/src/poll.cpp b/protocols/ICQ-WIM/src/poll.cpp index a75b972e15..cbf17cfa54 100644 --- a/protocols/ICQ-WIM/src/poll.cpp +++ b/protocols/ICQ-WIM/src/poll.cpp @@ -179,7 +179,7 @@ void CIcqProto::ProcessHistData(const JSONNode &ev) break;
}
- if ((si = CreateGroupChat(wszId, wszNick)) == nullptr)
+ if ((si = GcCreate(wszId, wszNick)) == nullptr)
return;
}
@@ -328,12 +328,13 @@ void CIcqProto::ProcessPresence(const JSONNode &ev) if (pUser == nullptr)
return;
- int iNewStatus = StatusFromPresence(ev, pUser->m_hContact);
+ MCONTACT hContact = GetRealContact(pUser);
+ int iNewStatus = StatusFromPresence(ev, hContact);
if (iNewStatus != -1)
ProcessStatus(pUser, iNewStatus);
- Json2string(pUser->m_hContact, ev, "friendly", "Nick", true);
- CheckAvatarChange(pUser->m_hContact, ev);
+ Json2string(hContact, ev, "friendly", "Nick", true);
+ CheckAvatarChange(hContact, ev);
}
void CIcqProto::ProcessSessionEnd(const JSONNode &/*ev*/)
@@ -352,10 +353,11 @@ void CIcqProto::ProcessTyping(const JSONNode &ev) auto *pUser = FindUser(aimId);
if (pUser) {
+ MCONTACT hContact = GetRealContact(pUser);
if (wszStatus == "typing")
- CallService(MS_PROTO_CONTACTISTYPING, pUser->m_hContact, 60);
+ CallService(MS_PROTO_CONTACTISTYPING, hContact, 60);
else
- CallService(MS_PROTO_CONTACTISTYPING, pUser->m_hContact, PROTOTYPE_CONTACTTYPING_OFF);
+ CallService(MS_PROTO_CONTACTISTYPING, hContact, PROTOTYPE_CONTACTTYPING_OFF);
}
}
|