summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorge Hazan <george.hazan@gmail.com>2024-12-16 18:17:30 +0300
committerGeorge Hazan <george.hazan@gmail.com>2024-12-16 18:17:35 +0300
commit9bdcd269ccfcbb3afc2014018a1a2575e855a166 (patch)
tree170299054b43d297c3c5e4f6991c3a9fa09cee5b
parent602a2375186515051727dfe075075fd47e110cc5 (diff)
minor fixes
-rw-r--r--protocols/Steam/src/main.cpp1
-rw-r--r--protocols/Steam/src/steam_contacts.cpp6
-rw-r--r--protocols/Steam/src/steam_ws.cpp1
3 files changed, 5 insertions, 3 deletions
diff --git a/protocols/Steam/src/main.cpp b/protocols/Steam/src/main.cpp
index 092f545208..9181cc600d 100644
--- a/protocols/Steam/src/main.cpp
+++ b/protocols/Steam/src/main.cpp
@@ -159,6 +159,7 @@ void CMPlugin::InitSteamServices()
serviceHandlers[UpdateAuthSessionWithSteamGuardCode] = ServiceResponseHandler(&CSteamProto::OnGotConfirmationCode);
serviceHandlers[FriendSendMessage] = ServiceResponseHandler(&CSteamProto::OnMessageSent);
+ serviceHandlers[FriendGetActiveSessions] = ServiceResponseHandler(&CSteamProto::OnGotConversations);
}
int CMPlugin::Load()
diff --git a/protocols/Steam/src/steam_contacts.cpp b/protocols/Steam/src/steam_contacts.cpp
index 88ca5699b6..dddca89631 100644
--- a/protocols/Steam/src/steam_contacts.cpp
+++ b/protocols/Steam/src/steam_contacts.cpp
@@ -445,7 +445,7 @@ void CSteamProto::OnGotFriendList(const CMsgClientFriendsList &reply, const CMsg
// Comma-separated list of steam ids to update summaries
std::vector<uint64_t> ids;
- ids.push_back(GetId(DBKEY_STEAM_ID));
+ ids.push_back(GetId(DBKEY_STEAM_ID) & 0xFFFFFFFFll);
// Check and update contacts in database
for (auto &hContact : AccContacts()) {
@@ -466,7 +466,7 @@ void CSteamProto::OnGotFriendList(const CMsgClientFriendsList &reply, const CMsg
// Do not update summary for non friends
if (it->second == FriendRelationship::Friend)
- ids.push_back(it->first);
+ ids.push_back(it->first & 0xFFFFFFFFll);
friendsMap.erase(it);
}
@@ -478,7 +478,7 @@ void CSteamProto::OnGotFriendList(const CMsgClientFriendsList &reply, const CMsg
UpdateContactRelationship(hContact, it.second);
if (it.second == FriendRelationship::Friend)
- ids.push_back(it.first);
+ ids.push_back(it.first & 0xFFFFFFFFll);
}
friendsMap.clear();
diff --git a/protocols/Steam/src/steam_ws.cpp b/protocols/Steam/src/steam_ws.cpp
index ceca7636a7..68cbe02389 100644
--- a/protocols/Steam/src/steam_ws.cpp
+++ b/protocols/Steam/src/steam_ws.cpp
@@ -156,6 +156,7 @@ void CSteamProto::ProcessMessage(const uint8_t *buf, size_t cbLen)
// persistent callbacks
switch (msgType) {
+ case EMsg::ServiceMethod:
case EMsg::ServiceMethodResponse:
ProcessServiceResponse(buf, cbLen, *hdr);
break;