diff options
| author | Alexandru Scvortov <alexandru@rabbitmq.com> | 2012-01-24 18:50:22 +0000 |
|---|---|---|
| committer | Alexandru Scvortov <alexandru@rabbitmq.com> | 2012-01-24 18:50:22 +0000 |
| commit | 9f1793492d497a5dda19c5685228b38a8ea29410 (patch) | |
| tree | f55c31417924cf9ccddaf80a88ccbb260f78f128 /src | |
| parent | ead2f76803c9a3baa6f0b2e15af73cfda15d3d62 (diff) | |
| download | rabbitmq-server-git-9f1793492d497a5dda19c5685228b38a8ea29410.tar.gz | |
don't discard accumulated changes
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_variable_queue.erl | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/rabbit_variable_queue.erl b/src/rabbit_variable_queue.erl index 92c650272f..83af5ddd66 100644 --- a/src/rabbit_variable_queue.erl +++ b/src/rabbit_variable_queue.erl @@ -654,11 +654,11 @@ ack(AckTags, undefined, State) -> ack_out_counter = AckOutCount + length(AckTags) })}; ack(AckTags, MsgFun, State = #vqstate{pending_ack = PA}) -> - [begin - AckEntry = gb_trees:get(SeqId, PA), - MsgFun(read_msg_callback(AckEntry), SeqId, State) - end || SeqId <- AckTags], - {[], State}. + State2 = lists:foldl(fun(SeqId, State1) -> + AckEntry = gb_trees:get(SeqId, PA), + MsgFun(read_msg_callback(AckEntry), SeqId, State1) + end, State, AckTags), + {[], State2}. requeue(AckTags, #vqstate { delta = Delta, q3 = Q3, |
