diff options
author | ktsj <ktsj@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-04-29 01:25:36 +0000 |
---|---|---|
committer | ktsj <ktsj@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-04-29 01:25:36 +0000 |
commit | 0f51db6a1ee68ccab6a63e05578b4a737c21d97f (patch) | |
tree | 6cc9f905facad151d8d7a08e8845413cc103798d /parse.y | |
parent | 7973883c3a2b40601f6f82893b4be8203b0ba363 (diff) | |
download | ruby-0f51db6a1ee68ccab6a63e05578b4a737c21d97f.tar.gz |
* parse.y (symbols_i): like r45492, call rb_gc_resurrect().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
-rw-r--r-- | parse.y | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -10908,9 +10908,13 @@ rb_make_internal_id(void) } static int -symbols_i(VALUE sym, ID value, VALUE ary) +symbols_i(VALUE key, ID value, VALUE ary) { - rb_ary_push(ary, ID2SYM(value)); + VALUE sym = ID2SYM(value); + if (ID_DYNAMIC_SYM_P(value)) { + rb_gc_resurrect(sym); + } + rb_ary_push(ary, sym); return ST_CONTINUE; } |