changeset 1ed6a6904fc9 in /home/hg/repos/gajim

details:http://hg.gajim.org/gajim?cmd=changeset;node=1ed6a6904fc9
description: fix traceback when closing a chat window.

diffstat:

 src/chat_control.py |  14 ++++++++------
 1 files changed, 8 insertions(+), 6 deletions(-)

diffs (50 lines):

diff -r 8885f31d37dd -r 1ed6a6904fc9 src/chat_control.py
--- a/src/chat_control.py       Wed May 18 19:44:43 2011 +0200
+++ b/src/chat_control.py       Wed May 18 22:08:37 2011 +0200
@@ -2642,12 +2642,9 @@
             self.reset_kbd_mouse_timeout_vars()
 
     def shutdown(self):
-        # PluginSystem: calling shutdown of super class (ChatControlBase) to 
let it remove
-        # it's GUI extension points
-        super(ChatControl, self).shutdown()
         # PluginSystem: removing GUI extension points connected with 
ChatControl
         # instance object
-        gajim.plugin_manager.remove_gui_extension_point('chat_control', self)  
      # Send 'gone' chatstate
+        gajim.plugin_manager.remove_gui_extension_point('chat_control', self)
 
         # disconnect from the dbus MessageSent signal.
         if self._dbus_message_sent_match:
@@ -2664,6 +2661,7 @@
         gajim.ged.remove_event_handler('caps-received', ged.GUI1,
             self._nec_caps_received)
 
+        # Send 'gone' chatstate
         self.send_chatstate('gone', self.contact)
         self.contact.chatstate = None
         self.contact.our_chatstate = None
@@ -2688,11 +2686,12 @@
         key = (self.contact.jid, self.account)
         roster = gajim.interface.roster
         if key in roster.contacts_to_be_removed.keys() and \
-        not roster.contact_has_pending_roster_events(self.contact, 
self.account):
+        not roster.contact_has_pending_roster_events(self.contact,
+        self.account):
             backend = roster.contacts_to_be_removed[key]['backend']
             del roster.contacts_to_be_removed[key]
             roster.remove_contact(self.contact.jid, self.account, force=True,
-                    backend=backend)
+                backend=backend)
         # remove all register handlers on widgets, created by self.xml
         # to prevent circular references among objects
         for i in self.handlers.keys():
@@ -2705,6 +2704,9 @@
             if spell_obj:
                 spell_obj.detach()
         self.msg_textview.destroy()
+        # PluginSystem: calling shutdown of super class (ChatControlBase) to 
let
+        # it remove it's GUI extension points
+        super(ChatControl, self).shutdown()
 
     def minimizable(self):
         return False
_______________________________________________
Commits mailing list
[email protected]
http://lists.gajim.org/cgi-bin/listinfo/commits

Reply via email to