From 17ff3b9b85f4af24a0520ed8a8af33fd7085959a Mon Sep 17 00:00:00 2001 From: nobu Date: Tue, 29 Sep 2015 16:34:37 +0000 Subject: [PATCH] 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 --- ChangeLog | 5 +++++ parse.y | 9 +++++++++ 2 files changed, 14 insertions(+) diff --git a/ChangeLog b/ChangeLog index a40d29994d..c11a4a4b67 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Wed Sep 30 01:34:34 2015 Nobuyoshi Nakada + + * parse.y (parser_free): fix memory leak at syntax error when + warn-indent is enabled. + Tue Sep 29 22:27:50 2015 Benoit Daloze * parse.y: fix minor typo. [ci skip][fix GH-1038]. diff --git a/parse.y b/parse.y index 38153e9ac1..a697834fd7 100644 --- a/parse.y +++ b/parse.y @@ -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); }