diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-09-29 16:34:37 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-09-29 16:34:37 +0000 |
commit | 17ff3b9b85f4af24a0520ed8a8af33fd7085959a (patch) | |
tree | cb85f9a439a46c9f6597cbf02c7f2d73737c08ed | |
parent | b881747bbd8a41510cfe5d7aa073b1dd0442b9f5 (diff) | |
download | ruby-17ff3b9b85f4af24a0520ed8a8af33fd7085959a.tar.gz |
parse.y: fix memory leak
* parse.y (parser_free): fix memory leak at syntax error when
warn-indent is enabled.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51981 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | parse.y | 9 |
2 files changed, 14 insertions, 0 deletions
@@ -1,3 +1,8 @@ +Wed Sep 30 01:34:34 2015 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * parse.y (parser_free): fix memory leak at syntax error when + warn-indent is enabled. + Tue Sep 29 22:27:50 2015 Benoit Daloze <eregontp@gmail.com> * parse.y: fix minor typo. [ci skip][fix GH-1038]. @@ -10630,6 +10630,15 @@ parser_free(void *ptr) prev = local->prev; xfree(local); } +#ifndef RIPPER + { + token_info *ptinfo; + while ((ptinfo = parser->token_info) != 0) { + parser->token_info = ptinfo->next; + xfree(ptinfo); + } + } +#endif xfree(ptr); } |