summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/rabbit_variable_queue.erl8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/rabbit_variable_queue.erl b/src/rabbit_variable_queue.erl
index b6b1f7f3..d622642b 100644
--- a/src/rabbit_variable_queue.erl
+++ b/src/rabbit_variable_queue.erl
@@ -591,10 +591,10 @@ dropwhile(Pred, MsgFun, State) ->
{_, State2} = internal_fetch(false, MsgStatus, State1),
dropwhile(Pred, MsgFun, State2);
{true, _} ->
- {{_, _, AckTag, _}, State2} =
- internal_fetch(true, MsgStatus, State1),
- {MsgStatus1, State3} = read_msg(MsgStatus, State2),
- MsgFun(MsgStatus1#msg_status.msg, AckTag),
+ {MsgStatus1, State2} = read_msg(MsgStatus, State1),
+ {{Msg, _, AckTag, _}, State3} =
+ internal_fetch(true, MsgStatus1, State2),
+ MsgFun(Msg, AckTag),
dropwhile(Pred, MsgFun, State3);
{false, _} ->
a(in_r(MsgStatus, State1))