summaryrefslogtreecommitdiff
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
commitec6fe12865e04cb44afca477bfd441268c497378 (patch)
tree72fc38fc6b947dce4a0150ed8193a575091c3745
parent8887710b573db5bb72620a6057a1f461df09c530 (diff)
downloadrabbitmq-server-bug25412.tar.gz
Don't just {reply, Cmd, State} since that will end up going into send/2 - which will decide not to send...bug25412
-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 f3a2eb92..e0f7b3f9 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};