diff options
author | Dan Williams <dcbw@redhat.com> | 2007-03-03 08:51:27 (GMT) |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2007-03-03 08:51:27 (GMT) |
commit | fc7f62359f0ece9bd736e91a17a5479c8c5962d6 (patch) | |
tree | acae1a1d7af1e8744e1b6296ac5dafe2722a76ff /services | |
parent | fc970ccf3dbbaf2cfac85b3e300eba8564b5877a (diff) |
Don't traceback on cleanup when disconnected already
Diffstat (limited to 'services')
-rw-r--r-- | services/presence2/server_plugin.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/services/presence2/server_plugin.py b/services/presence2/server_plugin.py index 472b024..a0c03b8 100644 --- a/services/presence2/server_plugin.py +++ b/services/presence2/server_plugin.py @@ -260,6 +260,7 @@ class ServerPlugin(gobject.GObject): elif state == CONNECTION_STATUS_DISCONNECTED: print 'disconnected: %r' % reason self.emit('status', state, int(reason)) + self._conn = None if reason == CONNECTION_STATUS_REASON_AUTHENTICATION_FAILED: # FIXME: handle connection failure; retry later? pass @@ -295,6 +296,8 @@ class ServerPlugin(gobject.GObject): self._reconnect_id = gobject.timeout_add(10000, self._reconnect) def cleanup(self): + if not self._conn: + return self._conn[CONN_INTERFACE].Disconnect() def _contact_offline(self, handle): |