diff options
author | mame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-10-16 14:38:08 +0000 |
---|---|---|
committer | mame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-10-16 14:38:08 +0000 |
commit | 01cdeb8da7077b660b70155a1cd244ebbfe2a9a4 (patch) | |
tree | 22abb797952aebb736b53a3ab9d559e857261e2e /compile.c | |
parent | ba1e27f3ca9bca11a80c906bba0627073e95f9cc (diff) |
* compile.c (iseq_set_sequence): fix memory leak.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19803 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'compile.c')
-rw-r--r-- | compile.c | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -1309,6 +1309,8 @@ iseq_set_sequence(rb_iseq_t *iseq, LINK_ANCHOR *anchor) rb_compile_error(RSTRING_PTR(iseq->filename), iobj->line_no, "operand size miss! (%d for %d)", iobj->operand_size, len - 1); + xfree(generated_iseq); + xfree(insn_info_table); return 0; } @@ -1403,6 +1405,8 @@ iseq_set_sequence(rb_iseq_t *iseq, LINK_ANCHOR *anchor) default: rb_compile_error(RSTRING_PTR(iseq->filename), iobj->line_no, "unknown operand type: %c", type); + xfree(generated_iseq); + xfree(insn_info_table); return 0; } } |