diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-06-18 07:43:47 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-06-18 07:43:47 +0000 |
commit | ca7bdc882bab78fffc91244496fd2c797018d881 (patch) | |
tree | 2291372e7f1c9b0c6739135a70abfecbe7079f07 /parse.y | |
parent | ed82d1388f92757ec8f423ef859cff2b54b42bfc (diff) | |
download | ruby-ca7bdc882bab78fffc91244496fd2c797018d881.tar.gz |
parse.y: clear lex_strterm
* parse.y (parser_heredoc_restore): clear lex_strterm always to get
rid of marking recycled node. this bug is revealed by r41372 with
GC.stress=true.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
-rw-r--r-- | parse.y | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -6345,6 +6345,7 @@ parser_heredoc_restore(struct parser_params *parser, NODE *here) { VALUE line; + lex_strterm = 0; line = here->nd_orig; lex_lastline = line; lex_pbeg = RSTRING_PTR(line); @@ -6419,7 +6420,6 @@ parser_here_document(struct parser_params *parser, NODE *here) #endif restore: heredoc_restore(lex_strterm); - lex_strterm = 0; return 0; } if (was_bol() && whole_match_p(eos, len, indent)) { |