diff options
author | George Hazan <george.hazan@gmail.com> | 2024-12-16 18:17:30 +0300 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2024-12-16 18:17:35 +0300 |
commit | 9bdcd269ccfcbb3afc2014018a1a2575e855a166 (patch) | |
tree | 170299054b43d297c3c5e4f6991c3a9fa09cee5b /protocols/Steam/src | |
parent | 602a2375186515051727dfe075075fd47e110cc5 (diff) |
minor fixes
Diffstat (limited to 'protocols/Steam/src')
-rw-r--r-- | protocols/Steam/src/main.cpp | 1 | ||||
-rw-r--r-- | protocols/Steam/src/steam_contacts.cpp | 6 | ||||
-rw-r--r-- | protocols/Steam/src/steam_ws.cpp | 1 |
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; |