From 1de2e1f2a45a82415a879910d7533498ecde8054 Mon Sep 17 00:00:00 2001 From: 0xAX Date: Thu, 14 Feb 2013 18:56:52 +0600 Subject: cowbot_req:has_body:/1 improved --- src/cowboy_req.erl | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/cowboy_req.erl b/src/cowboy_req.erl index 0c4969d..8c9a618 100644 --- a/src/cowboy_req.erl +++ b/src/cowboy_req.erl @@ -564,8 +564,14 @@ set_meta(Name, Value, Req=#http_req{meta=Meta}) -> %% @doc Return whether the request message has a body. -spec has_body(cowboy_req:req()) -> boolean(). has_body(Req) -> - lists:keymember(<<"content-length">>, 1, Req#http_req.headers) orelse - lists:keymember(<<"transfer-encoding">>, 1, Req#http_req.headers). + case lists:keyfind(<<"content-length">>, 1, Req#http_req.headers) of + {_, <<"0">>} -> + false; + {_, _} -> + true; + _ -> + lists:keymember(<<"transfer-encoding">>, 1, Req#http_req.headers) + end. %% @doc Return the request message body length, if known. %% -- cgit v1.2.3