From 61648b11b58f846a96ef13582f0565d2dfffa350 Mon Sep 17 00:00:00 2001 From: Yann Leboulanger Date: Sun, 17 May 2015 15:40:42 +0200 Subject: [PATCH] update control.contact when we get a message from another resource. Fixes #7919 --- src/session.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/session.py b/src/session.py index 7621fb323..2a4ec8d9a 100644 --- a/src/session.py +++ b/src/session.py @@ -65,10 +65,14 @@ class ChatControlSession(stanza_session.EncryptedStanzaSession): """ if obj.session != self: return + contact = gajim.contacts.get_contact(self.conn.name, obj.jid, + obj.resource) if self.resource != obj.resource: self.resource = obj.resource - if self.control and self.control.resource: - self.control.change_resource(self.resource) + if self.control: + self.control.contact = contact + if self.control.resource: + self.control.change_resource(self.resource) if obj.mtype == 'chat': if not obj.stanza.getTag('body') and obj.chatstate is None: @@ -114,8 +118,6 @@ class ChatControlSession(stanza_session.EncryptedStanzaSession): obj.mtype = 'pm' # Handle chat states - contact = gajim.contacts.get_contact(self.conn.name, obj.jid, - obj.resource) if contact and (not obj.forwarded or not obj.sent): if self.control and self.control.type_id == \ message_control.TYPE_CHAT: