diff options
-rw-r--r-- | src/ct_helper_error_h.erl | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/ct_helper_error_h.erl b/src/ct_helper_error_h.erl index 5d7cf02..3a2f9ea 100644 --- a/src/ct_helper_error_h.erl +++ b/src/ct_helper_error_h.erl @@ -129,6 +129,23 @@ handle_event(Event = {error, GL, write_event(Event), {ok, State} end; +%% Cowboy 2.13+: error coming from Cowboy. +handle_event(Event = {error, GL, + {_, "Ranch listener" ++ _, [_, _, _, Pid, {_, [{M, F, A, _}|_]}|_]}}, + State) when node(GL) =:= node() -> + A2 = if is_list(A) -> length(A); true -> A end, + Crash = {Pid, M, F, A2}, + case lists:member(Crash, State) of + true -> + {ok, lists:delete(Crash, State)}; + false -> + write_event(Event), + {ok, State} + end; +handle_event(Event = {error, GL, + {_, "Ranch listener" ++ _, [_, _, _, _Pid, ct_helper_ignore|_]}}, + State) when node(GL) =:= node() -> + {ok, State}; %% Cowboy 1.0. handle_event(Event = {error, GL, {_, "Ranch listener" ++ _, [_, _, _, Pid, {cowboy_handler, [_, _, _, |