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 | f2200f9d9371cd97df65becb7ccf1f983674ef83 (patch) | |
tree | 5ebb0180a319fa3a8f9affb56d5d2f8a9f279269 /enum.c | |
parent | a2e6bedcd5159bdb312eec8dea6e28de25b2c579 (diff) | |
download | ruby-f2200f9d9371cd97df65becb7ccf1f983674ef83.tar.gz ruby-f2200f9d9371cd97df65becb7ccf1f983674ef83.tar.xz ruby-f2200f9d9371cd97df65becb7ccf1f983674ef83.zip |
* enum.c (first_i): wrong condition for no argument #first.
[ruby-core:24017]
git-svn-id: http://svn.ruby-lang.org/repos/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]; } |