diff options
| author | Ben Hood <0x6e6562@gmail.com> | 2008-12-18 18:29:58 +0000 |
|---|---|---|
| committer | Ben Hood <0x6e6562@gmail.com> | 2008-12-18 18:29:58 +0000 |
| commit | 6a31edf3560ffa9e982dab7baae8df346b2130df (patch) | |
| tree | 6c42a02946341a4b6cce92916d913f92ab5e5e70 /src | |
| parent | 852d93688a3c0cf31c016d72cb1502b108a9dafb (diff) | |
| download | rabbitmq-server-git-6a31edf3560ffa9e982dab7baae8df346b2130df.tar.gz | |
Don't double monitor anything
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_limiter.erl | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/rabbit_limiter.erl b/src/rabbit_limiter.erl index 6cc170f90f..0d938580f9 100644 --- a/src/rabbit_limiter.erl +++ b/src/rabbit_limiter.erl @@ -144,8 +144,11 @@ code_change(_, State, _) -> % Starts to monitor a particular queue monitor_queue(QPid, State = #lim{queues = Queues}) -> - MonitorRef = erlang:monitor(process, QPid), - State#lim{queues = dict:store(QPid, MonitorRef, Queues)}. + case dict:is_key(QPid, Queues) of + false -> MonitorRef = erlang:monitor(process, QPid), + State#lim{queues = dict:store(QPid, MonitorRef, Queues)}; + true -> State + end. % Stops monitoring a particular queue demonitor_queue(QPid, State = #lim{queues = Queues}) -> |
