diff options
| author | Matthias Radestock <matthias@rabbitmq.com> | 2014-02-04 16:42:28 +0000 |
|---|---|---|
| committer | Matthias Radestock <matthias@rabbitmq.com> | 2014-02-04 16:42:28 +0000 |
| commit | 54b5de37ca389d02045ea8ac7b69836414279aba (patch) | |
| tree | 8f993a2292f929466a98e42e0bb38041a74d7f7d /src | |
| parent | d57b7c85df9518de125644a517e1f91cbc7c0754 (diff) | |
| download | rabbitmq-server-git-54b5de37ca389d02045ea8ac7b69836414279aba.tar.gz | |
update_counter--
correctness++
And also re-construct the prefix correctly.
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_queue_consumers.erl | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/rabbit_queue_consumers.erl b/src/rabbit_queue_consumers.erl index 6965984809..ca050f147d 100644 --- a/src/rabbit_queue_consumers.erl +++ b/src/rabbit_queue_consumers.erl @@ -270,12 +270,11 @@ subtract_acks([], Prefix, CTagCounts, AckQ) -> {CTagCounts, queue:join(queue:from_list(lists:reverse(Prefix)), AckQ)}; subtract_acks([T | TL] = AckTags, Prefix, CTagCounts, AckQ) -> case queue:out(AckQ) of - {{value, {T, CTag}}, QTail} -> + {{value, {T, CTag}}, QTail} -> subtract_acks(TL, Prefix, orddict:update_counter(CTag, 1, CTagCounts), QTail); - {{value, {AT, CTag}}, QTail} -> - subtract_acks(AckTags, [AT | Prefix], - orddict:update_counter(CTag, 1, CTagCounts), QTail) + {{value, V}, QTail} -> + subtract_acks(AckTags, [V | Prefix], CTagCounts, QTail) end. possibly_unblock(Update, ChPid, State) -> |
