diff options
author | Matthias Radestock <matthias@rabbitmq.com> | 2013-08-19 11:30:23 +0100 |
---|---|---|
committer | Matthias Radestock <matthias@rabbitmq.com> | 2013-08-19 11:30:23 +0100 |
commit | be57137d957b2cff32f586192173ff6d59940925 (patch) | |
tree | 307ef5fe32a22bb2ee6116b1f42ad6f0746f0b55 | |
parent | 951619dc64b7ac1afd0072ca371ff96af55a9677 (diff) | |
download | rabbitmq-server-bug25714.tar.gz |
refactor: make proper use of gb_sets APIbug25714
-rw-r--r-- | src/delegate.erl | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/delegate.erl b/src/delegate.erl index c10e7343..0331ca01 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 |