From 3649b0ee0dd5ea9d64cc64fb0c16a20db21322f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Tue, 6 Dec 2011 12:53:56 +0100 Subject: Simplify the guards for cowboy_http_req:body/2 --- src/cowboy_http_req.erl | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'src/cowboy_http_req.erl') diff --git a/src/cowboy_http_req.erl b/src/cowboy_http_req.erl index 765d90b..d5ee3fa 100644 --- a/src/cowboy_http_req.erl +++ b/src/cowboy_http_req.erl @@ -341,12 +341,11 @@ body(Req) -> -spec body(non_neg_integer(), #http_req{}) -> {ok, binary(), #http_req{}} | {error, atom()}. body(Length, Req=#http_req{body_state=waiting, buffer=Buffer}) - when Length =< byte_size(Buffer) -> + when is_integer(Length) andalso Length =< byte_size(Buffer) -> << Body:Length/binary, Rest/bits >> = Buffer, {ok, Body, Req#http_req{body_state=done, buffer=Rest}}; body(Length, Req=#http_req{socket=Socket, transport=Transport, - body_state=waiting, buffer=Buffer}) - when is_integer(Length) andalso Length > byte_size(Buffer) -> + body_state=waiting, buffer=Buffer}) -> case Transport:recv(Socket, Length - byte_size(Buffer), 5000) of {ok, Body} -> {ok, << Buffer/binary, Body/binary >>, Req#http_req{body_state=done, buffer= <<>>}}; -- cgit v1.2.3