diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-12-18 07:10:15 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-12-18 07:10:15 +0000 |
commit | 6b718de1d60946a83abf58695838551e62289fed (patch) | |
tree | 0ca0abe643a3e59d0d3646ab9d83dd05449784f7 | |
parent | c740951f250c4c4ad3b93e01aed92ec370e36e41 (diff) | |
download | ruby-6b718de1d60946a83abf58695838551e62289fed.tar.gz |
io.c: open generic in binread
* io.c (rb_io_s_binread): fix r61317, unintentional change.
From: Nobuyoshi Nakada <nobu@ruby-lang.org>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61319 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | io.c | 2 | ||||
-rw-r--r-- | test/ruby/test_io.rb | 6 |
2 files changed, 7 insertions, 1 deletions
@@ -10420,7 +10420,7 @@ rb_io_s_binread(int argc, VALUE *argv, VALUE io) rb_scan_args(argc, argv, "12", NULL, NULL, &offset); FilePathValue(argv[0]); convconfig.enc = rb_ascii8bit_encoding(); - arg.io = rb_file_open_generic(io_alloc(io), argv[0], oflags, fmode, &convconfig, 0); + arg.io = rb_io_open_generic(io, argv[0], oflags, fmode, &convconfig, 0); if (NIL_P(arg.io)) return Qnil; arg.argv = argv+1; arg.argc = (argc > 1) ? 1 : 0; diff --git a/test/ruby/test_io.rb b/test/ruby/test_io.rb index 89c68b6cb2..4f6027d8c9 100644 --- a/test/ruby/test_io.rb +++ b/test/ruby/test_io.rb @@ -2188,9 +2188,15 @@ class TestIO < Test::Unit::TestCase assert_warn(/invoke external command/) do File.read("|#{EnvUtil.rubybin} -e puts") end + assert_warn(/invoke external command/) do + File.binread("|#{EnvUtil.rubybin} -e puts") + end assert_raise_with_message(ArgumentError, /invoke external command/) do Class.new(IO).read("|#{EnvUtil.rubybin} -e puts") end + assert_raise_with_message(ArgumentError, /invoke external command/) do + Class.new(IO).binread("|#{EnvUtil.rubybin} -e puts") + end end def test_reopen |