From 24b79854af6641553a5d59a740ab0457ca658565 Mon Sep 17 00:00:00 2001 From: Sergey Bolhovskoy Date: Wed, 26 Nov 2014 06:01:58 +0000 Subject: VKontakte: fix SetAvatarUrl git-svn-id: http://svn.miranda-ng.org/main/trunk@11080 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- protocols/VKontakte/src/vk_avatars.cpp | 11 ++++++----- protocols/VKontakte/src/vk_proto.h | 2 +- protocols/VKontakte/src/vk_thread.cpp | 2 +- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/protocols/VKontakte/src/vk_avatars.cpp b/protocols/VKontakte/src/vk_avatars.cpp index fc3ad42f6f..c9de3f893d 100644 --- a/protocols/VKontakte/src/vk_avatars.cpp +++ b/protocols/VKontakte/src/vk_avatars.cpp @@ -145,18 +145,19 @@ void CVkProto::GetAvatarFileName(MCONTACT hContact, TCHAR* pszDest, size_t cbLen mir_sntprintf(pszDest + tPathLen, MAX_PATH - tPathLen, L"%d%s", id, szFileType); } -void CVkProto::SetAvatarUrl(MCONTACT hContact, LPCTSTR ptszUrl) +void CVkProto::SetAvatarUrl(MCONTACT hContact, CMString &tszUrl) { - ptrT oldUrl(getTStringA(hContact, "AvatarUrl")); - if (!lstrcmp(ptszUrl, oldUrl)) + CMString oldUrl(getTStringA(hContact, "AvatarUrl")); + + if (tszUrl == oldUrl) return; - if (ptszUrl == NULL) { + if (tszUrl.IsEmpty()) { delSetting(hContact, "AvatarUrl"); ProtoBroadcastAck(hContact, ACKTYPE_AVATAR, ACKRESULT_SUCCESS, NULL, 0); } else { - setTString(hContact, "AvatarUrl", ptszUrl); + setTString(hContact, "AvatarUrl", tszUrl.GetBuffer()); setByte(hContact,"NeedNewAvatar", 1); PROTO_AVATAR_INFORMATIONT AI = { sizeof(AI) }; AI.hContact = hContact; diff --git a/protocols/VKontakte/src/vk_proto.h b/protocols/VKontakte/src/vk_proto.h index b20659a538..78147f7eca 100644 --- a/protocols/VKontakte/src/vk_proto.h +++ b/protocols/VKontakte/src/vk_proto.h @@ -422,7 +422,7 @@ private: void OnLoggedOut(); void ShutdownSession(); - void SetAvatarUrl(MCONTACT hContact, LPCTSTR ptszUrl); + void SetAvatarUrl(MCONTACT hContact, CMString &tszUrl); void GetAvatarFileName(MCONTACT hContact, TCHAR* pszDest, size_t cbLen); void ReloadAvatarInfo(MCONTACT hContact); diff --git a/protocols/VKontakte/src/vk_thread.cpp b/protocols/VKontakte/src/vk_thread.cpp index 0e6e406191..c4ddcee979 100644 --- a/protocols/VKontakte/src/vk_thread.cpp +++ b/protocols/VKontakte/src/vk_thread.cpp @@ -308,7 +308,7 @@ MCONTACT CVkProto::SetContactInfo(JSONNODE* pItem, bool flag, bool self) tszValue = json_as_string(json_get(pItem, "photo_100")); if (!tszValue.IsEmpty()){ - SetAvatarUrl(hContact, tszValue.GetBuffer()); + SetAvatarUrl(hContact, tszValue); ReloadAvatarInfo(hContact); } -- cgit v1.2.3