aboutsummaryrefslogtreecommitdiffstats
path: root/src/cowboy_http.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/cowboy_http.erl')
-rw-r--r--src/cowboy_http.erl10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/cowboy_http.erl b/src/cowboy_http.erl
index 107fd60..f0f8ed7 100644
--- a/src/cowboy_http.erl
+++ b/src/cowboy_http.erl
@@ -709,11 +709,13 @@ parse_body(Buffer, State=#state{in_streamid=StreamID, in_state=
%% @todo Asks for 0 or more bytes.
{data, StreamID, nofin, Data, State#state{in_state=
PS#ps_body{transfer_decode_state=TState}}, Rest};
- {done, TotalLength, Rest} ->
- {data, StreamID, {fin, TotalLength}, <<>>, set_timeout(
+ %% @todo We probably want to confirm that the total length
+ %% is the same as the content-length, if one was provided.
+ {done, _TotalLength, Rest} ->
+ {data, StreamID, fin, <<>>, set_timeout(
State#state{in_streamid=StreamID + 1, in_state=#ps_request_line{}}), Rest};
- {done, Data, TotalLength, Rest} ->
- {data, StreamID, {fin, TotalLength}, Data, set_timeout(
+ {done, Data, _TotalLength, Rest} ->
+ {data, StreamID, fin, Data, set_timeout(
State#state{in_streamid=StreamID + 1, in_state=#ps_request_line{}}), Rest}
end.