summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/hash.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/src/hash.c b/src/hash.c
index e10c70694..a435b4afd 100644
--- a/src/hash.c
+++ b/src/hash.c
@@ -602,7 +602,6 @@ mrb_hash_shift(mrb_state *mrb, mrb_value hash)
khash_t(ht) *h = RHASH_TBL(hash);
khiter_t k;
mrb_value delKey, delVal;
- mrb_value result;
mrb_hash_modify(mrb, hash);
if (h) {
@@ -613,10 +612,7 @@ mrb_hash_shift(mrb_state *mrb, mrb_value hash)
delKey = kh_key(h,k);
delVal = mrb_hash_delete_key(mrb, hash, delKey);
- result = mrb_ary_new(mrb);
- mrb_ary_push(mrb, result, delKey);
- mrb_ary_push(mrb, result, delVal);
- return result;
+ return mrb_assoc_new(mrb, delKey, delVal);
}
}
}