summaryrefslogtreecommitdiff
path: root/kombu/pidbox.py
diff options
context:
space:
mode:
Diffstat (limited to 'kombu/pidbox.py')
-rw-r--r--kombu/pidbox.py18
1 files changed, 10 insertions, 8 deletions
diff --git a/kombu/pidbox.py b/kombu/pidbox.py
index a4380ecb..787fde32 100644
--- a/kombu/pidbox.py
+++ b/kombu/pidbox.py
@@ -242,14 +242,16 @@ class Mailbox(object):
responses.append(body)
consumer.register_callback(on_message)
- with consumer:
- for i in limit and range(limit) or count():
- try:
- self.connection.drain_events(timeout=timeout)
- except socket.timeout:
- break
- return responses
- chan.after_reply_message_received(queue.name)
+ try:
+ with consumer:
+ for i in limit and range(limit) or count():
+ try:
+ self.connection.drain_events(timeout=timeout)
+ except socket.timeout:
+ break
+ return responses
+ finally:
+ chan.after_reply_message_received(queue.name)
def _get_exchange(self, namespace, type):
return Exchange(self.exchange_fmt % namespace,