summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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 223a3927..160512a2 100644
--- a/src/rabbit_channel.erl
+++ b/src/rabbit_channel.erl
@@ -576,8 +576,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};