diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-11-03 05:43:31 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-11-03 05:43:31 +0000 |
commit | 86e9a1c0056bdb2f6623bb5644297fff1b4e4e70 (patch) | |
tree | 78b18817a144533f5e095af06a8fc65bf11cdf29 | |
parent | 30f69beebaf526dd03dc494d85c4dba85bbe8368 (diff) | |
download | ruby-86e9a1c0056bdb2f6623bb5644297fff1b4e4e70.tar.gz |
* iseq.c (iseq_free): resolve memory leak.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | iseq.c | 5 |
2 files changed, 8 insertions, 1 deletions
@@ -1,3 +1,7 @@ +Mon Nov 3 14:42:37 2014 Koichi Sasada <ko1@atdot.net> + + * iseq.c (iseq_free): resolve memory leak. + Mon Nov 3 13:49:18 2014 Koichi Sasada <ko1@atdot.net> * iseq.c (iseq_memsize): catch up recent changes. @@ -88,7 +88,10 @@ iseq_free(void *ptr) RUBY_FREE_UNLESS_NULL(iseq->callinfo_entries); RUBY_FREE_UNLESS_NULL(iseq->catch_table); RUBY_FREE_UNLESS_NULL(iseq->param.opt_table); - RUBY_FREE_UNLESS_NULL(iseq->param.keyword); + if (iseq->param.keyword != NULL) { + RUBY_FREE_UNLESS_NULL(iseq->param.keyword->default_values); + RUBY_FREE_UNLESS_NULL(iseq->param.keyword); + } compile_data_free(iseq->compile_data); RUBY_FREE_UNLESS_NULL(iseq->iseq); } |