diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-06-24 22:46:35 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-06-24 22:46:35 +0000 |
commit | 304c060d4a241a16c6b1d70c6fa3f7cbcbe557b4 (patch) | |
tree | 5ebb0180a319fa3a8f9affb56d5d2f8a9f279269 /enum.c | |
parent | c6480cd096da34cd36bea89d0a9b44577ca69570 (diff) | |
download | ruby-304c060d4a241a16c6b1d70c6fa3f7cbcbe557b4.tar.gz |
* enum.c (first_i): wrong condition for no argument #first.
[ruby-core:24017]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23846 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'enum.c')
-rw-r--r-- | enum.c | 24 |
1 files changed, 12 insertions, 12 deletions
@@ -608,23 +608,23 @@ enum_group_by(VALUE obj) } static VALUE -first_i(VALUE i, VALUE *ary, int argc, VALUE *argv) +first_i(VALUE i, VALUE *params, int argc, VALUE *argv) { ENUM_WANT_SVALUE(); - if (NIL_P(ary[0])) { - ary[1] = i; + if (NIL_P(params[1])) { + params[1] = i; rb_iter_break(); } else { - long n = ary[0]; + long n = params[0]; - rb_ary_push(ary[1], i); + rb_ary_push(params[1], i); n--; if (n <= 0) { rb_iter_break(); } - ary[0] = n; + params[0] = n; } return Qnil; } @@ -643,10 +643,10 @@ first_i(VALUE i, VALUE *ary, int argc, VALUE *argv) static VALUE enum_first(int argc, VALUE *argv, VALUE obj) { - VALUE n, ary[2]; + VALUE n, params[2]; if (argc == 0) { - ary[0] = ary[1] = Qnil; + params[0] = params[1] = Qnil; } else { long len; @@ -657,12 +657,12 @@ enum_first(int argc, VALUE *argv, VALUE obj) if (len < 0) { rb_raise(rb_eArgError, "negative length"); } - ary[0] = len; - ary[1] = rb_ary_new2(len); + params[0] = len; + params[1] = rb_ary_new2(len); } - rb_block_call(obj, id_each, 0, 0, first_i, (VALUE)ary); + rb_block_call(obj, id_each, 0, 0, first_i, (VALUE)params); - return ary[1]; + return params[1]; } |