From 819e8e6c82f05203c28d4e191d7dbe351d2f2905 Mon Sep 17 00:00:00 2001 From: aamine Date: Mon, 29 Sep 2003 14:39:54 +0000 Subject: * lib/net/http.rb (finish): does not raise IOError even if !started?, to allow duplicated #finish call. * lib/net/pop.rb (finish): ditto. * lib/net/smtp.rb (finish): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4625 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/net/smtp.rb | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'lib/net/smtp.rb') diff --git a/lib/net/smtp.rb b/lib/net/smtp.rb index d2de78239b..b14d43832a 100644 --- a/lib/net/smtp.rb +++ b/lib/net/smtp.rb @@ -331,7 +331,7 @@ module Net # :nodoc: do_start(helo, user, secret, authtype) return yield(self) ensure - finish if @started + finish end else do_start(helo, user, secret, authtype) @@ -365,11 +365,8 @@ module Net # :nodoc: end private :do_start - # Finish (close) the SMTP session. - # - # If the SMTP session has not been started, an IOError is raised. + # Finishes the SMTP session and closes TCP connection. def finish - raise IOError, 'closing already closed SMTP session' unless @started quit if @socket and not @socket.closed? and not @error_occured @socket.close if @socket and not @socket.closed? @socket = nil -- cgit v1.2.3