From 1ee2a1913e79e010733991d8373b2517abf0d91b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Bj=C3=B6rklund?= Date: Mon, 19 Apr 2021 20:03:57 +0200 Subject: Handle any zero-sized Data in http:data with fin Amended to make the test case hit the problem. --- src/gun_http.erl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/gun_http.erl b/src/gun_http.erl index d928b18..b38cc74 100644 --- a/src/gun_http.erl +++ b/src/gun_http.erl @@ -692,10 +692,10 @@ data(State=#http_state{socket=Socket, transport=Transport, version=Version, DataLength = iolist_size(Data), case Out of body_chunked when Version =:= 'HTTP/1.1', IsFin =:= fin -> - case Data of - <<>> -> + if + DataLength =:= 0 -> Transport:send(Socket, cow_http_te:last_chunk()); - _ -> + true -> Transport:send(Socket, [ cow_http_te:chunk(Data), cow_http_te:last_chunk() -- cgit v1.2.3