commit 08cedc452de43308ab88f196f880f1a0c758929a
parent 51560b9ecd1b42d5ee8a8318616e7241da4f7572
Author: Maran <maran.hidskes@gmail.com>
Date: Sun, 10 Mar 2013 17:44:35 +0100
Merge branch 'master' into feature/label_sync
Diffstat:
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/lib/interface.py b/lib/interface.py
@@ -470,6 +470,9 @@ class Interface(threading.Thread):
if message not in self.subscriptions[channel]:
self.subscriptions[channel].append(message)
+ if not self.is_connected:
+ return
+
if self.protocol in 'st':
with self.lock:
out = self.send_tcp(messages, channel)
@@ -516,14 +519,14 @@ class Interface(threading.Thread):
print "changing server:", server, proxy
self.server = server
self.proxy = proxy
- if self.protocol in 'st' and self.s:
+ if self.is_connected and self.protocol in 'st' and self.s:
self.s.shutdown(socket.SHUT_RDWR)
self.s.close()
self.is_connected = False # this exits the polling loop
self.trigger_callback('disconnecting') # for actively disconnecting
def stop(self):
- if self.protocol in 'st' and self.s:
+ if self.is_connected and self.protocol in 'st' and self.s:
self.s.shutdown(socket.SHUT_RDWR)
self.s.close()