summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Radestock <matthias@rabbitmq.com>2010-09-13 18:04:07 +0100
committerMatthias Radestock <matthias@rabbitmq.com>2010-09-13 18:04:07 +0100
commit085cd798b06314ed1e414ad9f5cd8cfb5316a7a0 (patch)
tree77140ead55740f930f77173142658e7502245f26
parent874e2cfa54aef250ff936fa2248c11cb47ec7fea (diff)
downloadrabbitmq-server-bug23249.tar.gz
set up monitoring in the callerbug23249
which makes for a cleaner and more flexible API
-rw-r--r--src/rabbit_channel_sup_sup.erl4
-rw-r--r--src/rabbit_reader.erl1
2 files changed, 2 insertions, 3 deletions
diff --git a/src/rabbit_channel_sup_sup.erl b/src/rabbit_channel_sup_sup.erl
index f7249221..21c39780 100644
--- a/src/rabbit_channel_sup_sup.erl
+++ b/src/rabbit_channel_sup_sup.erl
@@ -53,9 +53,7 @@ start_link() ->
supervisor2:start_link(?MODULE, []).
start_channel(Pid, Args) ->
- {ok, ChSupPid, _} = Result = supervisor2:start_child(Pid, [Args]),
- erlang:monitor(process, ChSupPid),
- Result.
+ supervisor2:start_child(Pid, [Args]).
%%----------------------------------------------------------------------------
diff --git a/src/rabbit_reader.erl b/src/rabbit_reader.erl
index 936ed23e..252f81a3 100644
--- a/src/rabbit_reader.erl
+++ b/src/rabbit_reader.erl
@@ -867,6 +867,7 @@ send_to_new_channel(Channel, AnalyzedFrame, State) ->
rabbit_channel_sup_sup:start_channel(
ChanSupSup, {Protocol, Sock, Channel, FrameMax,
self(), Username, VHost, Collector}),
+ erlang:monitor(process, ChSupPid),
put({channel, Channel}, {ch_fr_pid, ChFrPid}),
put({ch_sup_pid, ChSupPid}, {{channel, Channel}, {ch_fr_pid, ChFrPid}}),
put({ch_fr_pid, ChFrPid}, {channel, Channel}),