summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMatthias Radestock <matthias@rabbitmq.com>2010-07-02 15:50:45 +0100
committerMatthias Radestock <matthias@rabbitmq.com>2010-07-02 15:50:45 +0100
commit71a81b6b80bd9e39a0355a8a86d8906053a48be3 (patch)
treeebd49f49b9119dadb664072227ec8a5c30c07069 /src
parent5c121848c1198e270dc8153db57b47833a7d626c (diff)
parentf4b7a1380468081f0b5baa58dba0049111df2c5e (diff)
downloadrabbitmq-server-git-71a81b6b80bd9e39a0355a8a86d8906053a48be3.tar.gz
merge default into bug22889
Diffstat (limited to 'src')
-rw-r--r--src/rabbit_reader.erl9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/rabbit_reader.erl b/src/rabbit_reader.erl
index e8e6bb19b8..ac586de9f8 100644
--- a/src/rabbit_reader.erl
+++ b/src/rabbit_reader.erl
@@ -688,13 +688,14 @@ handle_method0(#'connection.close'{},
State = #v1{connection_state = running}) ->
lists:foreach(fun rabbit_framing_channel:shutdown/1, all_channels()),
maybe_close(State#v1{connection_state = closing});
-handle_method0(#'connection.close'{}, State = #v1{connection_state = CS,
- connection = #connection{
- protocol = Protocol}})
+handle_method0(#'connection.close'{},
+ State = #v1{connection_state = CS,
+ connection = #connection{protocol = Protocol},
+ sock = Sock})
when CS =:= closing; CS =:= closed ->
%% We're already closed or closing, so we don't need to cleanup
%% anything.
- ok = send_on_channel0(State#v1.sock, #'connection.close_ok'{}, Protocol),
+ ok = send_on_channel0(Sock, #'connection.close_ok'{}, Protocol),
State;
handle_method0(#'connection.close_ok'{},
State = #v1{connection_state = closed}) ->