Skip to content

Commit f14257d

Browse files
Avoid AlreadyClosedException where we can
1 parent d71bda7 commit f14257d

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

projects/client/RabbitMQ.Client/src/client/messagepatterns/Subscription.cs

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,11 @@ public void Close()
157157
}
158158

159159
if (shouldCancelConsumer) {
160-
m_model.BasicCancel(m_consumerTag);
160+
if(m_model.IsOpen)
161+
{
162+
m_model.BasicCancel(m_consumerTag);
163+
}
164+
161165
m_consumerTag = null;
162166
}
163167
} catch (OperationInterruptedException) {
@@ -190,7 +194,7 @@ public void Ack(BasicDeliverEventArgs evt)
190194

191195
lock(m_eventLock)
192196
{
193-
if (!m_noAck) {
197+
if (!m_noAck && m_model.IsOpen) {
194198
m_model.BasicAck(evt.DeliveryTag, false);
195199
}
196200

@@ -236,7 +240,7 @@ public void Nack(BasicDeliverEventArgs evt,
236240

237241
lock(m_eventLock)
238242
{
239-
if (!m_noAck) {
243+
if (!m_noAck && m_model.IsOpen) {
240244
m_model.BasicNack(evt.DeliveryTag, multiple, requeue);
241245
}
242246

0 commit comments

Comments
 (0)