From 76f4db863e230638f0c9b018c5bd3586799cd7ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Sat, 21 Oct 2017 21:01:40 +0100 Subject: Fix sending of final chunk in HTTP/1.1 I broke this when fixing stream handlers earlier. --- src/cowboy_http.erl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/cowboy_http.erl b/src/cowboy_http.erl index 9441700..4ff9f8c 100644 --- a/src/cowboy_http.erl +++ b/src/cowboy_http.erl @@ -846,7 +846,13 @@ commands(State0=#state{socket=Socket, transport=Transport, streams=Streams}, Str %% @todo Same as above. case lists:keyfind(StreamID, #stream.id, Streams) of #stream{version='HTTP/1.1'} -> - Transport:send(Socket, [integer_to_binary(Size, 16), <<"\r\n">>, Data, <<"\r\n">>]); + Transport:send(Socket, [ + integer_to_binary(Size, 16), <<"\r\n">>, Data, + case IsFin of + fin -> <<"\r\n0\r\n\r\n">>; + nofin -> <<"\r\n">> + end + ]); #stream{version='HTTP/1.0'} -> Transport:send(Socket, Data) end -- cgit v1.2.3