summaryrefslogtreecommitdiff
path: root/class.c
diff options
context:
space:
mode:
authorLourens Naudé <lourens@bearmetal.eu>2019-10-22 00:18:37 +0100
committer卜部昌平 <shyouhei@ruby-lang.org>2019-10-29 11:32:46 +0900
commit85b88c1d89924d00ecd893cea696d2a94232745c (patch)
tree094c4d64509b1a0e5dc28b0f57a94f6bbfc6a654 /class.c
parentfecaa6e946fc87df28682c96fea67c1535825cd5 (diff)
Let the arrays for the singleton and instance method reflection helpers be initialized to the methods count
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/2595
Diffstat (limited to 'class.c')
-rw-r--r--class.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/class.c b/class.c
index 010faed..0b2bd2c 100644
--- a/class.c
+++ b/class.c
@@ -1229,7 +1229,7 @@ class_instance_method_list(int argc, const VALUE *argv, VALUE mod, int obj, int
if (BUILTIN_TYPE(mod) == T_ICLASS && !prepended) continue;
if (!recur) break;
}
- ary = rb_ary_new();
+ ary = rb_ary_new2(me_arg.list->num_entries);
st_foreach(me_arg.list, func, ary);
st_free_table(me_arg.list);
@@ -1466,7 +1466,7 @@ rb_obj_singleton_methods(int argc, const VALUE *argv, VALUE obj)
klass = RCLASS_SUPER(klass);
}
}
- ary = rb_ary_new();
+ ary = rb_ary_new2(me_arg.list->num_entries);
st_foreach(me_arg.list, ins_methods_i, ary);
st_free_table(me_arg.list);