summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-05-22 08:19:04 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-05-22 08:19:04 +0000
commitd93f1876256bcf9b0c32a1b6e9dae3efb14127c0 (patch)
tree67cb88645eb3da6b3e4edfccdbf91bcc4831ee4a
parent53cde173f7ce57b4c820154b697d741d8bb0a863 (diff)
downloadruby-d93f1876256bcf9b0c32a1b6e9dae3efb14127c0.tar.gz
ruby-d93f1876256bcf9b0c32a1b6e9dae3efb14127c0.tar.xz
ruby-d93f1876256bcf9b0c32a1b6e9dae3efb14127c0.zip
* array.c (rb_ary_compact_bang): fix reallocation size.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog4
-rw-r--r--array.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 6376e196f..1f96eb026 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Thu May 22 17:18:35 2008 Tanaka Akira <akr@fsij.org>
+
+ * array.c (rb_ary_compact_bang): fix reallocation size.
+
Thu May 22 15:20:20 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* eval_intern.h, vm_core.h, include/ruby/intern.h, include/ruby/ruby.h,
diff --git a/array.c b/array.c
index 2cd3478ed..4cb74ac4f 100644
--- a/array.c
+++ b/array.c
@@ -2715,7 +2715,7 @@ rb_ary_compact_bang(VALUE ary)
return Qnil;
}
if (n * 2 < ARY_CAPA(ary) && ARY_DEFAULT_SIZE * 2 < ARY_CAPA(ary)) {
- RESIZE_CAPA(ary, ARY_DEFAULT_SIZE * 2);
+ RESIZE_CAPA(ary, n * 2);
}
RARRAY(ary)->len = n;