summaryrefslogtreecommitdiff
path: root/amqp/connection.py
diff options
context:
space:
mode:
Diffstat (limited to 'amqp/connection.py')
-rw-r--r--amqp/connection.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/amqp/connection.py b/amqp/connection.py
index 5af06e1..4286f24 100644
--- a/amqp/connection.py
+++ b/amqp/connection.py
@@ -162,6 +162,10 @@ class Connection(AbstractChannel):
}
_METHODS = {m.method_sig: m for m in _METHODS}
+ _ALLOWED_METHODS_WHEN_CLOSING = (
+ spec.Connection.Close, spec.Connection.CloseOk
+ )
+
connection_errors = (
ConnectionError,
socket.error,
@@ -576,10 +580,11 @@ class Connection(AbstractChannel):
wait=spec.Connection.CloseOk,
)
except (OSError, IOError, SSLError):
- self.is_closing = False
# close connection
self.collect()
raise
+ finally:
+ self.is_closing = False
def _on_close(self, reply_code, reply_text, class_id, method_id):
"""Request a connection close.