diff options
-rw-r--r-- | src/server/channel.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/server/channel.py b/src/server/channel.py index eb9a560..a82cc43 100644 --- a/src/server/channel.py +++ b/src/server/channel.py @@ -101,9 +101,19 @@ class Channel(_Channel, DBusProperties): @dbus.service.method(CHANNEL_INTERFACE, in_signature='', out_signature='') def Close(self): self.Closed() + + # Do all these separately in case one works but another doesn't. try: self._chan_manager.remove_channel(self) + except: + pass + + try: self._conn.remove_channel(self) + except: + pass + + try: self.remove_from_connection() except: pass |