aboutsummaryrefslogtreecommitdiffstats
path: root/src/cowboy_handler.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/cowboy_handler.erl')
-rw-r--r--src/cowboy_handler.erl9
1 files changed, 2 insertions, 7 deletions
diff --git a/src/cowboy_handler.erl b/src/cowboy_handler.erl
index bf42b77..c0f7ff7 100644
--- a/src/cowboy_handler.erl
+++ b/src/cowboy_handler.erl
@@ -20,10 +20,6 @@
-module(cowboy_handler).
-behaviour(cowboy_middleware).
--ifdef(OTP_RELEASE).
--compile({nowarn_deprecated_function, [{erlang, get_stacktrace, 0}]}).
--endif.
-
-export([execute/2]).
-export([terminate/4]).
@@ -46,10 +42,9 @@ execute(Req, Env=#{handler := Handler, handler_opts := HandlerOpts}) ->
Mod:upgrade(Req2, Env, Handler, State);
{Mod, Req2, State, Opts} ->
Mod:upgrade(Req2, Env, Handler, State, Opts)
- catch Class:Reason ->
- StackTrace = erlang:get_stacktrace(),
+ catch Class:Reason:Stacktrace ->
terminate({crash, Class, Reason}, Req, HandlerOpts, Handler),
- erlang:raise(Class, Reason, StackTrace)
+ erlang:raise(Class, Reason, Stacktrace)
end.
-spec terminate(any(), Req | undefined, any(), module()) -> ok when Req::cowboy_req:req().