diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | array.c | 5 |
2 files changed, 5 insertions, 4 deletions
@@ -1,3 +1,7 @@ +Thu Oct 10 21:36:16 2013 Masaki Matsushita <glass.saga@gmail.com> + + * array.c (rb_ary_compact_bang): use ary_resize_smaller(). + Thu Oct 10 21:00:38 2013 Masaki Matsushita <glass.saga@gmail.com> * st.c (st_keys): define st_keys() for performance improvement of @@ -4166,10 +4166,7 @@ rb_ary_compact_bang(VALUE ary) if (RARRAY_LEN(ary) == n) { return Qnil; } - ARY_SET_LEN(ary, n); - if (n * 2 < ARY_CAPA(ary) && ARY_DEFAULT_SIZE * 2 < ARY_CAPA(ary)) { - ary_resize_capa(ary, n * 2); - } + ary_resize_smaller(ary, n); return ary; } |