From 0b324ac64ba108f06bafb3a687a69ac148fdbbf6 Mon Sep 17 00:00:00 2001 From: Alexander Lantsev Date: Tue, 29 Apr 2014 19:23:12 +0000 Subject: Steam: fixed contact management functions git-svn-id: http://svn.miranda-ng.org/main/trunk@9099 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- protocols/Steam/src/steam_account.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'protocols/Steam/src/steam_account.cpp') diff --git a/protocols/Steam/src/steam_account.cpp b/protocols/Steam/src/steam_account.cpp index 90062d7375..0335d40b1d 100644 --- a/protocols/Steam/src/steam_account.cpp +++ b/protocols/Steam/src/steam_account.cpp @@ -146,8 +146,9 @@ void CSteamProto::LogInThread(void* param) token = mir_strdup(authResult.GetToken()); setString("TokenSecret", token); - //setString("Cookie", authResult.GetCookie()); + setString("Cookie", authResult.GetCookie()); setString("SteamID", authResult.GetSteamid()); + setString("SessionID", authResult.GetSessionId()); } SteamWebApi::LoginApi::LoginResult loginResult; @@ -179,6 +180,16 @@ void CSteamProto::LogInThread(void* param) m_iStatus = m_iDesiredStatus; ProtoBroadcastAck(NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)ID_STATUS_CONNECTING, m_iStatus); + ptrA sessionId(getStringA("SessionID")); + if (!sessionId || lstrlenA(sessionId) == 0) + { + SteamWebApi::SessionApi::SessionId result; + debugLogA("CSteamProto::LogInThread: call SteamWebApi::SessionApi::GetSessionId"); + SteamWebApi::SessionApi::GetSessionId(m_hNetlibUser, token, loginResult.GetSteamId(), &result); + if (result.IsSuccess()) + setString("SessionID", result.GetSessionId()); + } + // load contact list LoadContactListThread(NULL); -- cgit v1.2.3