From e1e072b8009bf7075552b7b8a79d404cee9259f0 Mon Sep 17 00:00:00 2001 From: Daniel Bovensiepen Date: Sun, 20 May 2012 13:18:34 +0800 Subject: Fix Hash#shift return value from Hash to Array --- src/hash.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/hash.c') diff --git a/src/hash.c b/src/hash.c index 3a2399c27..e10c70694 100644 --- a/src/hash.c +++ b/src/hash.c @@ -613,9 +613,9 @@ mrb_hash_shift(mrb_state *mrb, mrb_value hash) delKey = kh_key(h,k); delVal = mrb_hash_delete_key(mrb, hash, delKey); - result = mrb_hash_new(mrb, 1); - k = kh_put(ht, RHASH_TBL(result), KEY(delKey)); - kh_value(RHASH_TBL(result), k) = delVal; + result = mrb_ary_new(mrb); + mrb_ary_push(mrb, result, delKey); + mrb_ary_push(mrb, result, delVal); return result; } } -- cgit v1.2.3