diff options
Diffstat (limited to 'protocols/Discord/src/server.cpp')
-rw-r--r-- | protocols/Discord/src/server.cpp | 27 |
1 files changed, 11 insertions, 16 deletions
diff --git a/protocols/Discord/src/server.cpp b/protocols/Discord/src/server.cpp index 2924b971d0..60d713d4f2 100644 --- a/protocols/Discord/src/server.cpp +++ b/protocols/Discord/src/server.cpp @@ -143,10 +143,10 @@ void CDiscordProto::OnReceiveHistory(NETLIBHTTPREQUEST *pReply, AsyncHttpRequest void CDiscordProto::RetrieveMyInfo() { - Push(new AsyncHttpRequest(this, REQUEST_GET, "/users/@me", &CDiscordProto::OnReceiveUserInfo)); + Push(new AsyncHttpRequest(this, REQUEST_GET, "/users/@me", &CDiscordProto::OnReceiveMyInfo)); } -void CDiscordProto::OnReceiveUserInfo(NETLIBHTTPREQUEST *pReply, AsyncHttpRequest*) +void CDiscordProto::OnReceiveMyInfo(NETLIBHTTPREQUEST *pReply, AsyncHttpRequest*) { if (pReply->resultCode != 200) { ConnectionFailed(LOGINERR_WRONGPASSWORD); @@ -167,22 +167,17 @@ void CDiscordProto::OnReceiveUserInfo(NETLIBHTTPREQUEST *pReply, AsyncHttpReques setWString(0, DB_KEY_NICK, root["username"].as_mstring()); setWString(0, DB_KEY_EMAIL, root["email"].as_mstring()); - if (0 == 0) { - m_ownId = id; - for (int i=0; i < pReply->headersCount; i++) - if (!strcmp(pReply->headers[i].szName, "Set-Cookie")) { - char *p = strchr(pReply->headers[i].szValue, ';'); - if (p) *p = 0; - m_szAccessCookie = mir_strdup(pReply->headers[i].szValue); - } - - OnLoggedIn(); - } - else { - CDiscordUser *pUser = FindUser(id); - ProcessType(pUser, root); + m_ownId = id; + for (int i = 0; i < pReply->headersCount; i++) { + if (!strcmp(pReply->headers[i].szName, "Set-Cookie")) { + char *p = strchr(pReply->headers[i].szValue, ';'); + if (p) *p = 0; + m_szAccessCookie = mir_strdup(pReply->headers[i].szValue); + } } + OnLoggedIn(); + CheckAvatarChange(0, root["avatar"].as_mstring()); } |