diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_reader.erl | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/rabbit_reader.erl b/src/rabbit_reader.erl index 3262923556..52127300d5 100644 --- a/src/rabbit_reader.erl +++ b/src/rabbit_reader.erl @@ -806,11 +806,11 @@ handle_method0(MethodName, FieldsBin, try handle_method0(Protocol:decode_method_fields(MethodName, FieldsBin), State) - catch exit:#amqp_error{method = none} = Reason -> - handle_exception(State, 0, Reason#amqp_error{method = MethodName}); - throw:{writer_inet_error, closed} -> + catch throw:{writer_inet_error, closed} -> maybe_emit_stats(State), throw(connection_closed_abruptly); + exit:#amqp_error{method = none} = Reason -> + handle_exception(State, 0, Reason#amqp_error{method = MethodName}); Type:Reason -> Stack = erlang:get_stacktrace(), handle_exception(State, 0, {Type, Reason, MethodName, Stack}) |
