summaryrefslogtreecommitdiffhomepage
path: root/src/hash.c
diff options
context:
space:
mode:
authorPaolo Bosetti <[email protected]>2012-05-30 22:10:02 -0700
committerPaolo Bosetti <[email protected]>2012-05-30 22:10:02 -0700
commit6dbba7b799e0cf1a86ec86f347bbc1b40420d372 (patch)
treeebbc4d9d1a526833fde0819bcd9a1124be656540 /src/hash.c
parent1da34f46f4ff4ddff8f5c525aab13fdfd7eb4a99 (diff)
parentfae483ff2a91e806e714cb7d118c7bfb8aadbeb2 (diff)
downloadmruby-6dbba7b799e0cf1a86ec86f347bbc1b40420d372.tar.gz
mruby-6dbba7b799e0cf1a86ec86f347bbc1b40420d372.zip
Merge branch 'master' of git://github.com/mruby/mruby into XCode
Diffstat (limited to 'src/hash.c')
-rw-r--r--src/hash.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/hash.c b/src/hash.c
index 19d0507e3..28e718c0d 100644
--- a/src/hash.c
+++ b/src/hash.c
@@ -1037,14 +1037,12 @@ mrb_hash_values(mrb_state *mrb, mrb_value hash)
{
khash_t(ht) *h = RHASH_TBL(hash);
khiter_t k;
- mrb_value ary = mrb_ary_new(mrb);
+ mrb_value ary = mrb_ary_new_capa(mrb, kh_size(h));
if (!h) return ary;
for (k = kh_begin(h); k != kh_end(h); k++) {
if (kh_exist(h, k)){
mrb_value v = kh_value(h,k);
- if ( !mrb_special_const_p(v) )
- v = mrb_obj_dup(mrb, v);
mrb_ary_push(mrb, ary, v);
}
}