summaryrefslogtreecommitdiff
path: root/src/delegate.erl
diff options
context:
space:
mode:
authorMatthias Radestock <matthias@rabbitmq.com>2013-08-19 11:30:23 +0100
committerMatthias Radestock <matthias@rabbitmq.com>2013-08-19 11:30:23 +0100
commitbd3cc66822b7ed06887b22172c0f2a4268ffd2ef (patch)
tree307ef5fe32a22bb2ee6116b1f42ad6f0746f0b55 /src/delegate.erl
parent28a0f963f7d201895964b6c8328dc0935b431806 (diff)
downloadrabbitmq-server-git-bd3cc66822b7ed06887b22172c0f2a4268ffd2ef.tar.gz
refactor: make proper use of gb_sets API
Diffstat (limited to 'src/delegate.erl')
-rw-r--r--src/delegate.erl10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/delegate.erl b/src/delegate.erl
index c10e73436f..0331ca01d0 100644
--- a/src/delegate.erl
+++ b/src/delegate.erl
@@ -197,7 +197,7 @@ handle_cast({monitor, MonitoringPid, Pid},
dict:store(Pid, {Ref, Pids1}, Monitors);
error ->
Ref = erlang:monitor(process, Pid),
- Pids = gb_sets:from_list([MonitoringPid]),
+ Pids = gb_sets:singleton(MonitoringPid),
dict:store(Pid, {Ref, Pids}, Monitors)
end,
{noreply, State#state{monitors = Monitors1}, hibernate};
@@ -207,10 +207,10 @@ handle_cast({demonitor, MonitoringPid, Pid},
Monitors1 = case dict:find(Pid, Monitors) of
{ok, {Ref, Pids}} ->
Pids1 = gb_sets:del_element(MonitoringPid, Pids),
- case gb_sets:size(Pids1) of
- 0 -> erlang:demonitor(Ref),
- dict:erase(Pid, Monitors);
- _ -> dict:store(Pid, {Ref, Pids1}, Monitors)
+ case gb_sets:is_empty(Pids1) of
+ true -> erlang:demonitor(Ref),
+ dict:erase(Pid, Monitors);
+ false -> dict:store(Pid, {Ref, Pids1}, Monitors)
end;
error ->
Monitors