Skip to content

Commit c458814

Browse files
AMQNET-727 Fix sync for pendingAck
* Fix sync for pendingAck * Add curly braces
1 parent fe3c59d commit c458814

1 file changed

Lines changed: 12 additions & 15 deletions

File tree

src/MessageConsumer.cs

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -662,12 +662,12 @@ public void DeliverAcks()
662662

663663
if(this.deliveringAcks.CompareAndSet(false, true))
664664
{
665-
if(this.IsAutoAcknowledgeEach)
665+
using (this.deliveredMessagesLock.Lock())
666666
{
667-
using(this.deliveredMessagesLock.Lock())
667+
if (this.IsAutoAcknowledgeEach)
668668
{
669669
ack = MakeAckForAllDeliveredMessages(AckType.ConsumedAck);
670-
if(ack != null)
670+
if (ack != null)
671671
{
672672
Tracer.DebugFormat("Consumer[{0}] DeliverAcks clearing the Dispatch list", ConsumerId);
673673
this.deliveredMessages.Clear();
@@ -679,11 +679,11 @@ public void DeliverAcks()
679679
this.pendingAck = null;
680680
}
681681
}
682-
}
683-
else if(pendingAck != null && pendingAck.AckType == (byte) AckType.ConsumedAck)
684-
{
685-
ack = pendingAck;
686-
pendingAck = null;
682+
else if (pendingAck != null && pendingAck.AckType == (byte)AckType.ConsumedAck)
683+
{
684+
ack = pendingAck;
685+
pendingAck = null;
686+
}
687687
}
688688

689689
if(ack != null)
@@ -1251,16 +1251,13 @@ public virtual async Task AfterMessageIsConsumedAsync(MessageDispatch dispatch,
12511251
}
12521252
else if(IsClientAcknowledge || IsIndividualAcknowledge)
12531253
{
1254-
bool messageAckedByConsumer = false;
12551254

12561255
using(await this.deliveredMessagesLock.LockAsync().Await())
12571256
{
1258-
messageAckedByConsumer = this.deliveredMessages.Contains(dispatch);
1259-
}
1260-
1261-
if(messageAckedByConsumer)
1262-
{
1263-
await AckLaterAsync(dispatch, AckType.DeliveredAck).Await();
1257+
if (this.deliveredMessages.Contains(dispatch))
1258+
{
1259+
await AckLaterAsync(dispatch, AckType.DeliveredAck).Await();
1260+
}
12641261
}
12651262
}
12661263
else

0 commit comments

Comments
 (0)