summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLouis-Francis Ratté-Boulianne <louis-francis.ratte-boulianne@collabora.co.uk>2010-10-22 14:23:41 -0400
committerLouis-Francis Ratté-Boulianne <louis-francis.ratte-boulianne@collabora.co.uk>2010-12-03 10:55:42 -0500
commita3e3c0b2e547b4404fbdcfd77f06514744ebf103 (patch)
treec3c2282094e1961233d3b6d58ac00d0e6087c0df
parent4e3d98900b9d9574d08588476a186a85d2aa9667 (diff)
Remove D-Bus object from connection in default implementation of Close
-rw-r--r--src/server/channel.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/server/channel.py b/src/server/channel.py
index b5ee2b0..7cc0b3a 100644
--- a/src/server/channel.py
+++ b/src/server/channel.py
@@ -111,8 +111,12 @@ class Channel(_Channel, DBusProperties):
@dbus.service.method(CHANNEL_INTERFACE, in_signature='', out_signature='')
def Close(self):
self.Closed()
- self._chan_manager.remove_channel(self)
- self._conn.remove_channel(self)
+ try:
+ self._chan_manager.remove_channel(self)
+ self._conn.remove_channel(self)
+ self.remove_from_connection()
+ except:
+ pass
@dbus.service.method(CHANNEL_INTERFACE, in_signature='', out_signature='s')
def GetChannelType(self):