Sfoglia il codice sorgente

trailer_or_error is not required for correctness

pull/71/head
lwalkin 10 anni fa
parent
commit
9e10787013
1 ha cambiato i file con 1 aggiunte e 11 eliminazioni
  1. +1
    -11
      src/jiffy.erl

+ 1
- 11
src/jiffy.erl Vedi File

@ -19,23 +19,13 @@ decode(Data, Opts) when is_binary(Data), is_list(Opts) ->
{partial, EJson} ->
finish_decode(EJson);
{iter, Decoder, Val, Objs, Curr} ->
trailer_or_error(decode_loop(Data, Decoder, Val, Objs, Curr), Opts, Data);
decode_loop(Data, Decoder, Val, Objs, Curr);
EJson ->
EJson
end;
decode(Data, Opts) when is_list(Data) ->
decode(iolist_to_binary(Data), Opts).
% Only return trailing data if explicitly requested in the options.
trailer_or_error({with_trailer, _EJson, TrailerData} = WithTrailer, Opts, Data) ->
case lists:member(with_trailer, Opts) of
true -> WithTrailer;
false ->
AtByte = iolist_size(Data) - iolist_size(TrailerData) + 1,
throw({error,{AtByte,invalid_trailing_data}})
end;
trailer_or_error(EJson, _Opts, _Data) -> EJson.
encode(Data) ->
encode(Data, []).

Caricamento…
Annulla
Salva