aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy/controller.py
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2011-01-27 13:32:24 +1300
committerAldo Cortesi <aldo@nullcube.com>2011-01-27 13:32:24 +1300
commitefe11a0782a668b4310849f7696cc89004d82f45 (patch)
tree70169d8f7074480e5df469a3a2c9482cb28298da /libmproxy/controller.py
parent077272ec9703ff1b3f20f69c971adf63a6dd05c1 (diff)
downloadmitmproxy-efe11a0782a668b4310849f7696cc89004d82f45.tar.gz
mitmproxy-efe11a0782a668b4310849f7696cc89004d82f45.tar.bz2
mitmproxy-efe11a0782a668b4310849f7696cc89004d82f45.zip
Kill deadlock that sometimes occurred on shutdown.
Diffstat (limited to 'libmproxy/controller.py')
-rw-r--r--libmproxy/controller.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/libmproxy/controller.py b/libmproxy/controller.py
index 29e2f7a8..ddfbe7f1 100644
--- a/libmproxy/controller.py
+++ b/libmproxy/controller.py
@@ -29,8 +29,11 @@ class Msg:
def send(self, masterq):
self.acked = False
- masterq.put(self)
- return self.q.get()
+ try:
+ masterq.put(self, timeout=3)
+ return self.q.get(timeout=3)
+ except (Queue.Empty, Queue.Full):
+ return None
class Slave(threading.Thread):