summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/rabbit_event.erl6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/rabbit_event.erl b/src/rabbit_event.erl
index 7d91b6fa..2d626ad4 100644
--- a/src/rabbit_event.erl
+++ b/src/rabbit_event.erl
@@ -112,8 +112,10 @@ stop_stats_timer(C, P) ->
case element(P, C) of
#state{level = Level, timer = TRef} = State
when Level =/= none andalso TRef =/= undefined ->
- erlang:cancel_timer(TRef),
- setelement(P, C, State#state{timer = undefined});
+ case erlang:cancel_timer(TRef) of
+ false -> C;
+ _ -> setelement(P, C, State#state{timer = undefined})
+ end;
#state{} ->
C
end.