зеркало из https://github.com/github/ruby.git
* lib/net/http.rb (finish): revert to 1.93.
* lib/net/pop.rb (finish): revert to 1.60. * lib/net/smtp.rb (finish): revert to 1.67. * lib/net/http.rb (do_start): ensure to close socket if failed to start session. * lib/net/pop.rb (do_start): ditto. * lib/net/smtp.rb (do_start): ditto. * lib/net/smtp.rb: SMTP#started? wrongly returned false always. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4628 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
2eeb39b3cf
Коммит
e377a12bff
17
ChangeLog
17
ChangeLog
|
@ -1,3 +1,20 @@
|
|||
Tue Sep 30 03:12:02 2003 Minero Aoki <aamine@loveruby.net>
|
||||
|
||||
* lib/net/http.rb (finish): revert to 1.93.
|
||||
|
||||
* lib/net/pop.rb (finish): revert to 1.60.
|
||||
|
||||
* lib/net/smtp.rb (finish): revert to 1.67.
|
||||
|
||||
* lib/net/http.rb (do_start): ensure to close socket if failed to
|
||||
start session.
|
||||
|
||||
* lib/net/pop.rb (do_start): ditto.
|
||||
|
||||
* lib/net/smtp.rb (do_start): ditto.
|
||||
|
||||
* lib/net/smtp.rb: SMTP#started? wrongly returned false always.
|
||||
|
||||
Tue Sep 30 02:54:49 2003 Minero Aoki <aamine@loveruby.net>
|
||||
|
||||
* test/ruby/test_iterator.rb: new test
|
||||
|
|
|
@ -416,7 +416,7 @@ module Net # :nodoc:
|
|||
do_start
|
||||
return yield(self)
|
||||
ensure
|
||||
finish
|
||||
do_finish
|
||||
end
|
||||
end
|
||||
do_start
|
||||
|
@ -437,12 +437,18 @@ module Net # :nodoc:
|
|||
private :on_connect
|
||||
|
||||
# Finishes HTTP session and closes TCP connection.
|
||||
# Raises IOError if not started.
|
||||
def finish
|
||||
raise IOError, 'HTTP session not started yet' unless started?
|
||||
do_finish
|
||||
end
|
||||
|
||||
def do_finish
|
||||
@started = false
|
||||
@socket.close if @socket and not @socket.closed?
|
||||
@socket = nil
|
||||
@started = false
|
||||
nil
|
||||
end
|
||||
private :do_finish
|
||||
|
||||
#
|
||||
# proxy
|
||||
|
|
|
@ -415,7 +415,7 @@ module Net
|
|||
do_start account, password
|
||||
return yield(self)
|
||||
ensure
|
||||
finish
|
||||
do_finish
|
||||
end
|
||||
else
|
||||
do_start account, password
|
||||
|
@ -434,6 +434,8 @@ module Net
|
|||
@command.auth account, password
|
||||
end
|
||||
@started = true
|
||||
ensure
|
||||
do_finish if not @started
|
||||
end
|
||||
private :do_start
|
||||
|
||||
|
@ -443,13 +445,20 @@ module Net
|
|||
|
||||
# Finishes a POP3 session and closes TCP connection.
|
||||
def finish
|
||||
raise IOError, 'POP session not started yet' unless started?
|
||||
do_finish
|
||||
end
|
||||
|
||||
def do_finish
|
||||
@mails = nil
|
||||
@command.quit if @command
|
||||
ensure
|
||||
@started = false
|
||||
@command = nil
|
||||
@socket.close if @socket and not @socket.closed?
|
||||
@socket = nil
|
||||
@started = false
|
||||
end
|
||||
private :do_finish
|
||||
|
||||
def command
|
||||
raise IOError, 'POP session not opened yet' \
|
||||
|
|
|
@ -331,7 +331,7 @@ module Net # :nodoc:
|
|||
do_start(helo, user, secret, authtype)
|
||||
return yield(self)
|
||||
ensure
|
||||
finish
|
||||
do_finish
|
||||
end
|
||||
else
|
||||
do_start(helo, user, secret, authtype)
|
||||
|
@ -362,17 +362,28 @@ module Net # :nodoc:
|
|||
raise
|
||||
end
|
||||
authenticate user, secret, authtype if user
|
||||
@started = true
|
||||
ensure
|
||||
@socket.close if not @started and @socket and not @socket.closed?
|
||||
end
|
||||
private :do_start
|
||||
|
||||
# Finishes the SMTP session and closes TCP connection.
|
||||
# Raises IOError if not started.
|
||||
def finish
|
||||
raise IOError, 'not started yet' unless started?
|
||||
do_finish
|
||||
end
|
||||
|
||||
def do_finish
|
||||
quit if @socket and not @socket.closed? and not @error_occured
|
||||
ensure
|
||||
@started = false
|
||||
@error_occured = false
|
||||
@socket.close if @socket and not @socket.closed?
|
||||
@socket = nil
|
||||
@error_occured = false
|
||||
@started = false
|
||||
end
|
||||
private :do_finish
|
||||
|
||||
#
|
||||
# message send
|
||||
|
@ -623,4 +634,3 @@ module Net # :nodoc:
|
|||
SMTPSession = SMTP
|
||||
|
||||
end # module Net
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче