Mercurial > pidgin.yaz
changeset 31299:4445ae4215b8
Don't destroy our local object storing the display picture when a NLN command show us the same MsnObject.
author | masca@cpw.pidgin.im |
---|---|
date | Mon, 02 Aug 2010 20:36:02 +0000 |
parents | b9c80d9c2ae5 |
children | 5ad928319db0 |
files | libpurple/protocols/msn/object.c libpurple/protocols/msn/object.h libpurple/protocols/msn/user.c |
diffstat | 3 files changed, 4 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/libpurple/protocols/msn/object.c Fri Jul 30 18:21:59 2010 +0000 +++ b/libpurple/protocols/msn/object.c Mon Aug 02 20:36:02 2010 +0000 @@ -352,7 +352,7 @@ } } -static MsnObject * +MsnObject * msn_object_find_local(const char *sha1) { GList *l;
--- a/libpurple/protocols/msn/object.h Fri Jul 30 18:21:59 2010 +0000 +++ b/libpurple/protocols/msn/object.h Mon Aug 02 20:36:02 2010 +0000 @@ -235,6 +235,8 @@ */ PurpleStoredImage *msn_object_get_image(const MsnObject *obj); +MsnObject * msn_object_find_local(const char *sha1); + void msn_object_set_local(MsnObject *obj); #endif /* MSN_OBJECT_H */
--- a/libpurple/protocols/msn/user.c Fri Jul 30 18:21:59 2010 +0000 +++ b/libpurple/protocols/msn/user.c Mon Aug 02 20:36:02 2010 +0000 @@ -577,7 +577,7 @@ { g_return_if_fail(user != NULL); - if (user->msnobj != NULL) + if (user->msnobj != NULL && !msn_object_find_local(msn_object_get_sha1(obj))) msn_object_destroy(user->msnobj); user->msnobj = obj;