summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSimon MacMullen <simon@rabbitmq.com>2013-01-24 15:15:06 +0000
committerSimon MacMullen <simon@rabbitmq.com>2013-01-24 15:15:06 +0000
commitf43c487a9b48a386fe1f9883fec8f97f94ccf830 (patch)
tree72fc38fc6b947dce4a0150ed8193a575091c3745 /src
parent6fdc8875d205347db625f978511c69c9eac4d980 (diff)
downloadrabbitmq-server-git-f43c487a9b48a386fe1f9883fec8f97f94ccf830.tar.gz
Don't just {reply, Cmd, State} since that will end up going into send/2 - which will decide not to send...
Diffstat (limited to 'src')
-rw-r--r--src/rabbit_channel.erl6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/rabbit_channel.erl b/src/rabbit_channel.erl
index f3a2eb921d..e0f7b3f901 100644
--- a/src/rabbit_channel.erl
+++ b/src/rabbit_channel.erl
@@ -587,8 +587,10 @@ handle_method(_Method, _, #ch{state = starting}) ->
handle_method(#'channel.close_ok'{}, _, #ch{state = closing}) ->
stop;
-handle_method(#'channel.close'{}, _, State = #ch{state = closing}) ->
- {reply, #'channel.close_ok'{}, State};
+handle_method(#'channel.close'{}, _, State = #ch{writer_pid = WriterPid,
+ state = closing}) ->
+ ok = rabbit_writer:send_command(WriterPid, #'channel.close_ok'{}),
+ {noreply, State};
handle_method(_Method, _, State = #ch{state = closing}) ->
{noreply, State};