diff --git a/ChangeLog b/ChangeLog index db2982d88f..08dc1605a3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Fri Jan 11 11:59:32 2013 NARUSE, Yui + + * string.c (dispose_string): use rb_str_free for freeing string in + parse.y. by Sokolov Yura + https://github.com/ruby/ruby/pull/87 fix GH-87 + Fri Jan 11 09:56:22 2013 Shugo Maeda * insns.def (defineclass): private constants should not be accessed diff --git a/parse.y b/parse.y index 8a541a880d..cb42db7497 100644 --- a/parse.y +++ b/parse.y @@ -5948,9 +5948,7 @@ parser_regx_options(struct parser_params *parser) static void dispose_string(VALUE str) { - /* TODO: should use another API? */ - if (RBASIC(str)->flags & RSTRING_NOEMBED) - xfree(RSTRING_PTR(str)); + rb_str_free(str); rb_gc_force_recycle(str); }