summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMatthias Radestock <matthias@lshift.net>2010-05-15 11:36:49 +0100
committerMatthias Radestock <matthias@lshift.net>2010-05-15 11:36:49 +0100
commit596b6087ca0176a9fd30f0f6588830f59ba11895 (patch)
tree94356cc918731a8fd63de8ac282aa26bc06e9649 /src
parent57bbfb01fa226539b780958a146505c315c0da08 (diff)
downloadrabbitmq-server-git-596b6087ca0176a9fd30f0f6588830f59ba11895.tar.gz
refactor: more sensible ordering of result tuple
Diffstat (limited to 'src')
-rw-r--r--src/rabbit_msg_file.erl15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/rabbit_msg_file.erl b/src/rabbit_msg_file.erl
index fc9368a119..3dbf8eadff 100644
--- a/src/rabbit_msg_file.erl
+++ b/src/rabbit_msg_file.erl
@@ -101,17 +101,18 @@ scan(FileHdl, FileSize, Data, ReadOffset, Acc, ScanOffset) ->
Read = lists:min([?SCAN_BLOCK_SIZE, (FileSize - ReadOffset)]),
case file_handle_cache:read(FileHdl, Read) of
{ok, Data1} ->
- {Acc1, ScanOffset1, Data2} =
+ {Data2, Acc1, ScanOffset1} =
scan(<<Data/binary, Data1/binary>>, Acc, ScanOffset),
- scan(FileHdl, FileSize, Data2, ReadOffset + iolist_size(Data1),
- Acc1, ScanOffset1);
- _KO -> {ok, Acc, ScanOffset}
+ ReadOffset1 = ReadOffset + size(Data1),
+ scan(FileHdl, FileSize, Data2, ReadOffset1, Acc1, ScanOffset1);
+ _KO ->
+ {ok, Acc, ScanOffset}
end.
scan(<<>>, Acc, Offset) ->
- {Acc, Offset, <<>>};
+ {<<>>, Acc, Offset};
scan(<<0:?INTEGER_SIZE_BITS, _Rest/binary>>, Acc, Offset) ->
- {Acc, Offset, <<>>}; %% Nothing to do other than stop.
+ {<<>>, Acc, Offset}; %% Nothing to do other than stop.
scan(<<Size:?INTEGER_SIZE_BITS, GuidAndMsg:Size/binary,
WriteMarker:?WRITE_OK_SIZE_BITS, Rest/binary>>, Acc, Offset) ->
TotalSize = Size + ?FILE_PACKING_ADJUSTMENT,
@@ -130,4 +131,4 @@ scan(<<Size:?INTEGER_SIZE_BITS, GuidAndMsg:Size/binary,
scan(Rest, Acc, Offset + TotalSize)
end;
scan(Data, Acc, Offset) ->
- {Acc, Offset, Data}.
+ {Data, Acc, Offset}.