aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--hash.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index f4c1b7f4db..1dfc7e9b3f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Sun Dec 1 14:37:20 2013 Masaki Matsushita <glass.saga@gmail.com>
+
+ * hash.c (rb_hash_to_a): specify array capa.
+
Sun Dec 1 14:15:36 2013 Masaki Matsushita <glass.saga@gmail.com>
* hash.c (rb_hash_rehash): fix to free new st_table when exception
diff --git a/hash.c b/hash.c
index d312325981..e1d682819e 100644
--- a/hash.c
+++ b/hash.c
@@ -1606,7 +1606,7 @@ rb_hash_to_a(VALUE hash)
{
VALUE ary;
- ary = rb_ary_new();
+ ary = rb_ary_new_capa(RHASH_SIZE(hash));
rb_hash_foreach(hash, to_a_i, ary);
OBJ_INFECT(ary, hash);