aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorKazuki Yamaguchi <k@rhe.jp>2015-11-06 10:13:03 +0900
committerKazuki Yamaguchi <k@rhe.jp>2015-11-06 10:13:10 +0900
commitabfb4a22a7f719b645c9fd97444fbaba7c357c17 (patch)
tree3ad311ac26964c8be64ff90fb725606edc0ac5dc /lib
parent49f0eceb57f1ae13694f970a600b6915e1bc31e9 (diff)
downloadplum-abfb4a22a7f719b645c9fd97444fbaba7c357c17.tar.gz
connection: #close: return if already closed
Diffstat (limited to 'lib')
-rw-r--r--lib/plum/client.rb2
-rw-r--r--lib/plum/connection.rb1
2 files changed, 2 insertions, 1 deletions
diff --git a/lib/plum/client.rb b/lib/plum/client.rb
index 3749482..81066d7 100644
--- a/lib/plum/client.rb
+++ b/lib/plum/client.rb
@@ -62,7 +62,7 @@ module Plum
# Closes the connection.
def close
- @plum.close if @plum && @plum.state != :closed
+ @plum.close if @plum
ensure
@socket.close if @socket
end
diff --git a/lib/plum/connection.rb b/lib/plum/connection.rb
index f365861..1d47360 100644
--- a/lib/plum/connection.rb
+++ b/lib/plum/connection.rb
@@ -38,6 +38,7 @@ module Plum
# Emits :close event. Doesn't actually close socket.
def close
+ return if @state == :closed
@state = :closed
# TODO: server MAY wait streams
callback(:close)