diff options
-rw-r--r-- | protocols/Steam/src/steam_polling.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/protocols/Steam/src/steam_polling.cpp b/protocols/Steam/src/steam_polling.cpp index eb5db69c3c..cdfcfd797d 100644 --- a/protocols/Steam/src/steam_polling.cpp +++ b/protocols/Steam/src/steam_polling.cpp @@ -5,6 +5,9 @@ void CSteamProto::ParsePollData(JSONNode *data) { JSONNode *node, *item = NULL; + + // FIXME: Temporary solution for receivng too many duplicated typing events; should be reworked better + std::string typingUser; std::string steamIds; for (size_t i = 0; i < json_size(data); i++) @@ -47,6 +50,11 @@ void CSteamProto::ParsePollData(JSONNode *data) } else if (!lstrcmpi(type, L"typing")) { + // FIXME: Temporary solution for receivng too many duplicated typing events; should be reworked better + if (typingUser == steamId) + continue; + typingUser = steamId; + MCONTACT hContact = FindContact(steamId); if (hContact) { @@ -301,4 +309,4 @@ void CSteamProto::PollingThread(void*) m_hPollingThread = NULL; debugLogW(L"CSteamProto::PollingThread: leaving"); -}
\ No newline at end of file +} |