diff --git a/src/emqx_ws_channel.erl b/src/emqx_ws_channel.erl index 94ed70633..9571baab8 100644 --- a/src/emqx_ws_channel.erl +++ b/src/emqx_ws_channel.erl @@ -315,9 +315,8 @@ terminate(SockError, _Req, #state{keepalive = Keepalive, emqx_protocol:terminate(Reason, ProtoState), exit(Reason); {_, Error} -> - ?LOG(error, "Unexpected terminated for ~p", [Error]), emqx_protocol:terminate(Error, ProtoState), - exit(unknown) + exit({error, SockError}) end. %%-------------------------------------------------------------------- @@ -346,7 +345,7 @@ ensure_stats_timer(State) -> shutdown(Reason, State) -> %% Fix the issue#2591(https://github.com/emqx/emqx/issues/2591#issuecomment-500278696) - self() ! {stop, State#state{shutdown = {shutdown, Reason}}}, + self() ! {stop, {shutdown, Reason}}, {ok, State}. wsock_stats() ->