aboutsummaryrefslogtreecommitdiffstats
path: root/src/cowboy_http.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/cowboy_http.erl')
-rw-r--r--src/cowboy_http.erl6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/cowboy_http.erl b/src/cowboy_http.erl
index 71d33ce..b1c8dbe 100644
--- a/src/cowboy_http.erl
+++ b/src/cowboy_http.erl
@@ -209,8 +209,7 @@ loop(State=#state{parent=Parent, socket=Socket, transport=Transport, opts=Opts,
loop(State, Buffer);
%% System messages.
{'EXIT', Parent, Reason} ->
- %% @todo We should exit gracefully, if possible.
- exit(Reason);
+ terminate(State, {stop, {exit, Reason}, 'Parent process terminated.'});
{system, From, Request} ->
sys:handle_system_msg(Request, From, Parent, ?MODULE, [], {State, Buffer});
%% Messages pertaining to a stream.
@@ -1379,8 +1378,7 @@ system_continue(_, _, {State, Buffer}) ->
-spec system_terminate(any(), _, _, {#state{}, binary()}) -> no_return().
system_terminate(Reason, _, _, {State, _}) ->
- %% @todo We should exit gracefully, if possible.
- terminate(State, Reason).
+ terminate(State, {stop, {exit, Reason}, 'sys:terminate/2,3 was called.'}).
-spec system_code_change(Misc, _, _, _) -> {ok, Misc} when Misc::{#state{}, binary()}.
system_code_change(Misc, _, _, _) ->