diff --git a/gajim/chat_control.py b/gajim/chat_control.py index 79e5aeead7c165eefbcc794790d5214e0f16f5ea..eedeb0f29db0f24ee5bad5af31c657a5aaf1a10e 100644 --- a/gajim/chat_control.py +++ b/gajim/chat_control.py @@ -765,7 +765,7 @@ def _set_jingle_state(self, jingle_type: str, state: str, sid: str = None, new_sid = None if jingle_state == self.JINGLE_STATE_NULL: new_sid = None - if state in ('connection_received', 'connecting'): + if state in ('connection_received', 'connecting', 'connected'): new_sid = sid jingle.state = jingle_state @@ -888,9 +888,6 @@ def close_jingle_content(self, jingle_type: str) -> None: if not jingle.sid: return - jingle.sid = None - jingle.state = self.JINGLE_STATE_NULL - con = app.connections[self.account] session = con.get_module('Jingle').get_jingle_session( self.contact.get_full_jid(), jingle.sid) @@ -898,6 +895,10 @@ def close_jingle_content(self, jingle_type: str) -> None: content = session.get_content(jingle_type) if content: session.remove_content(content.creator, content.name) + + jingle.sid = None + jingle.state = self.JINGLE_STATE_NULL + var = GLib.Variant.new_boolean(False) jingle.action.change_state(var)