From 2645044c6b021bee0207a68305e4ff89af122d1a Mon Sep 17 00:00:00 2001 From: Seven Du Date: Thu, 21 Jun 2012 11:12:27 +0800 Subject: Fix stream_body when used by multipart --- src/cowboy_http_req.erl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/cowboy_http_req.erl b/src/cowboy_http_req.erl index 2789bb4..9f3bf2e 100644 --- a/src/cowboy_http_req.erl +++ b/src/cowboy_http_req.erl @@ -472,7 +472,13 @@ stream_body(Req=#http_req{buffer=Buffer, body_state={stream, _, _, _}}) stream_body(Req=#http_req{body_state={stream, _, _, _}}) -> stream_body_recv(Req); stream_body(Req=#http_req{body_state=done}) -> - {done, Req}. + {done, Req}; +stream_body(Req=#http_req{body_state={multipart, _N, _Fun}, + transport=Transport, socket=Socket}) -> + case Transport:recv(Socket, 0, 5000) of + {ok, Data} -> {ok, Data, Req}; + {error, Reason} -> {error, Reason} + end. -spec stream_body_recv(#http_req{}) -> {ok, binary(), #http_req{}} | {error, atom()}. -- cgit v1.2.3