mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* io.c (io_binwrite_string): Test writev() failure.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48136 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
96d375540f
commit
1fe90db538
3 changed files with 18 additions and 0 deletions
|
@ -1,3 +1,7 @@
|
|||
Sat Oct 25 22:28:17 2014 Tanaka Akira <akr@fsij.org>
|
||||
|
||||
* io.c (io_binwrite_string): Test writev() failure.
|
||||
|
||||
Sat Oct 25 20:19:19 2014 Martin Duerst <duerst@it.aoyama.ac.jp>
|
||||
|
||||
* test/test-unicode_normalize.rb: added test_us_ascii.
|
||||
|
|
3
io.c
3
io.c
|
@ -1276,6 +1276,9 @@ io_binwrite_string(VALUE arg)
|
|||
|
||||
r = rb_writev_internal(fptr->fd, iov, 2);
|
||||
|
||||
if (r == -1)
|
||||
return -1;
|
||||
|
||||
if (fptr->wbuf.len <= r) {
|
||||
r -= fptr->wbuf.len;
|
||||
fptr->wbuf.off = 0;
|
||||
|
|
|
@ -1370,6 +1370,17 @@ class TestIO < Test::Unit::TestCase
|
|||
end
|
||||
end
|
||||
|
||||
def test_close_read_pipe_nosync
|
||||
assert_separately([], <<-"end;")
|
||||
r, w = IO.pipe
|
||||
r.close
|
||||
w.sync = false
|
||||
assert_raise(Errno::EPIPE) {
|
||||
loop { w.write "a" }
|
||||
}
|
||||
end;
|
||||
end
|
||||
|
||||
def test_close_read_non_readable
|
||||
with_pipe do |r, w|
|
||||
assert_raise(IOError) do
|
||||
|
|
Loading…
Reference in a new issue