From 86e9a1c0056bdb2f6623bb5644297fff1b4e4e70 Mon Sep 17 00:00:00 2001 From: ko1 Date: Mon, 3 Nov 2014 05:43:31 +0000 Subject: * iseq.c (iseq_free): resolve memory leak. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- iseq.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'iseq.c') diff --git a/iseq.c b/iseq.c index 561d85be5a..0ebf2a83e5 100644 --- a/iseq.c +++ b/iseq.c @@ -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); } -- cgit v1.2.3