0
Fork 0
mirror of https://github.com/ninenines/cowboy.git synced 2025-07-16 13:10:24 +00:00

Fix a bug preventing 'onresponse' from being called on errors

This commit is contained in:
Loïc Hoguin 2012-05-21 15:17:24 +02:00
parent ca9278bc27
commit cc6c4e39de
2 changed files with 12 additions and 2 deletions

View file

@ -438,12 +438,13 @@ ensure_response(#http_req{socket=Socket, transport=Transport,
%% Only send an error reply if there is no resp_sent message.
-spec error_terminate(cowboy_http:status(), #state{}) -> ok.
error_terminate(Code, State=#state{socket=Socket, transport=Transport}) ->
error_terminate(Code, State=#state{socket=Socket, transport=Transport,
onresponse=OnResponse}) ->
receive
{cowboy_http_req, resp_sent} -> ok
after 0 ->
_ = cowboy_http_req:reply(Code, #http_req{
socket=Socket, transport=Transport,
socket=Socket, transport=Transport, onresponse=OnResponse,
connection=close, pid=self(), resp_state=waiting}),
ok
end,