diff options
author | nagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-03-08 19:12:23 +0000 |
---|---|---|
committer | nagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-03-08 19:12:23 +0000 |
commit | 117fec74396341a72956bb0e3c5ed8c87614f7e5 (patch) | |
tree | 019fac0555e765c2084e58389d8f656f540058ac | |
parent | 0df86c0b0a47f566d6f5abada2af64d91dcb34fe (diff) |
merge revision(s) 53329: [Backport #11885]
* io.c (io_getpartial): remove unused kwarg from template
* test/ruby/test_io.rb (test_readpartial_bad_args): new
[Bug #11885]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | io.c | 6 | ||||
-rw-r--r-- | test/ruby/test_io.rb | 11 | ||||
-rw-r--r-- | version.h | 2 |
4 files changed, 22 insertions, 3 deletions
@@ -1,3 +1,9 @@ +Wed Mar 9 04:05:36 2016 Eric Wong <e@80x24.org> + + * io.c (io_getpartial): remove unused kwarg from template + * test/ruby/test_io.rb (test_readpartial_bad_args): new + [Bug #11885] + Wed Mar 9 03:53:37 2016 Tadashi Saito <tadashi_saito@dwango.co.jp> * compile.c, cont.c, doc, man: fix common misspelling. @@ -2483,7 +2483,7 @@ io_getpartial(int argc, VALUE *argv, VALUE io, int nonblock, int no_exception) long n, len; struct read_internal_arg arg; - rb_scan_args(argc, argv, "11:", &length, &str, NULL); + rb_scan_args(argc, argv, "11", &length, &str); if ((len = NUM2LONG(length)) < 0) { rb_raise(rb_eArgError, "negative length %ld given", len); @@ -2675,8 +2675,10 @@ io_read_nonblock(int argc, VALUE *argv, VALUE io) rb_scan_args(argc, argv, "11:", NULL, NULL, &opts); - if (!NIL_P(opts) && Qfalse == get_kwargs_exception(opts)) + if (!NIL_P(opts) && Qfalse == get_kwargs_exception(opts)) { no_exception = 1; + argc--; + } ret = io_getpartial(argc, argv, io, 1, no_exception); diff --git a/test/ruby/test_io.rb b/test/ruby/test_io.rb index 96c9ebc1eb..0f994a14bb 100644 --- a/test/ruby/test_io.rb +++ b/test/ruby/test_io.rb @@ -3152,6 +3152,17 @@ End } end + def test_readpartial_bad_args + IO.pipe do |r, w| + w.write '.' + buf = String.new + assert_raise(ArgumentError) { r.readpartial(1, buf, exception: false) } + assert_raise(TypeError) { r.readpartial(1, exception: false) } + assert_equal [[r],[],[]], IO.select([r], nil, nil, 1) + assert_equal '.', r.readpartial(1) + end + end + def test_sysread_unlocktmp_ensure bug8669 = '[ruby-core:56121] [Bug #8669]' @@ -1,6 +1,6 @@ #define RUBY_VERSION "2.2.5" #define RUBY_RELEASE_DATE "2016-03-09" -#define RUBY_PATCHLEVEL 245 +#define RUBY_PATCHLEVEL 246 #define RUBY_RELEASE_YEAR 2016 #define RUBY_RELEASE_MONTH 3 |