summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-12-23 15:24:54 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-12-23 15:24:54 +0000
commit03b82426d4db5848ab065f2f430e298646060e19 (patch)
treee29bc02b77650b702d82f1e2be371df785b3c039
parent4fe1dc5201ac8185a6b7e1d8681c596955ee5c79 (diff)
downloadruby-03b82426d4db5848ab065f2f430e298646060e19.tar.gz
ruby-03b82426d4db5848ab065f2f430e298646060e19.tar.xz
ruby-03b82426d4db5848ab065f2f430e298646060e19.zip
* lib/net/protocol.rb (Net::BufferedIO#rbuf_fill): avoid calling
read_nonblock in rescue. use retry instead. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@20955 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--lib/net/protocol.rb2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index d12bec132..578fc66dd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -171,6 +171,11 @@ Mon Dec 22 18:00:36 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/tcltklib.c: fix wrong flag value.
+Mon Dec 22 15:15:58 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * lib/net/protocol.rb (Net::BufferedIO#rbuf_fill): avoid calling
+ read_nonblock in rescue. use retry instead.
+
Mon Dec 22 14:35:59 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_external_str_new_with_enc): set ASCII-8BIT if
diff --git a/lib/net/protocol.rb b/lib/net/protocol.rb
index 3f6f416ba..e26c84933 100644
--- a/lib/net/protocol.rb
+++ b/lib/net/protocol.rb
@@ -135,7 +135,7 @@ module Net # :nodoc:
@rbuf << @io.read_nonblock(BUFSIZE)
rescue Errno::EWOULDBLOCK
if IO.select([@io], nil, nil, @read_timeout)
- @rbuf << @io.read_nonblock(BUFSIZE)
+ retry
else
raise Timeout::TimeoutError
end