def avatarHashChanged(self, userHandle, hash):
if not self.session: return
- av = self.session.pytrans.avatarCache.getAvatar(hash)
- if av:
- msnContact = self.getContacts().getContact(userHandle)
- msnContact.msnobjGot = True
- jid = msn2jid(userHandle)
+
+ if not hash:
+ # They've turned off their avatar
c = self.session.contactList.findContact(jid)
if not c: return
c.updateAvatar(av)
else:
- self.requestAvatar(userHandle)
+ # New avatar
+ av = self.session.pytrans.avatarCache.getAvatar(hash)
+ if av:
+ msnContact = self.getContacts().getContact(userHandle)
+ msnContact.msnobjGot = True
+ jid = msn2jid(userHandle)
+ c = self.session.contactList.findContact(jid)
+ if not c: return
+ c.updateAvatar(av)
+ else:
+ self.requestAvatar(userHandle)
def gotAvatarImage(self, userHandle, imageData):
if not self.session: return