From 9d9cb0ab6a052c658a861b33a48a16cb2fb5b655 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Mon, 9 Sep 2019 23:08:54 +0900 Subject: Fix `mod.constants` not to have duplicate constant names; #4698 The fix was based on PR from @dearblue --- src/variable.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/variable.c b/src/variable.c index 32416da4e..06756a69f 100644 --- a/src/variable.c +++ b/src/variable.c @@ -882,7 +882,15 @@ const_i(mrb_state *mrb, mrb_sym sym, mrb_value v, void *p) ary = *(mrb_value*)p; s = mrb_sym2name_len(mrb, sym, &len); if (len >= 1 && ISUPPER(s[0])) { - mrb_ary_push(mrb, ary, mrb_symbol_value(sym)); + mrb_int i, alen = RARRAY_LEN(ary); + + for (i=0; i