diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | id_table.c | 5 |
2 files changed, 9 insertions, 0 deletions
@@ -1,3 +1,7 @@ +Wed Aug 12 21:51:11 2015 Koichi Sasada <[email protected]> + + * id_table.c (mix_id_table_insert): fix memory leak. + Wed Aug 12 21:17:38 2015 Eric Wong <[email protected]> * iseq.c (iseq_memsize): reimplement for wrapper diff --git a/id_table.c b/id_table.c index ad1df059bc..0277f7b1fc 100644 --- a/id_table.c +++ b/id_table.c @@ -1458,6 +1458,11 @@ mix_id_table_insert(struct mix_id_table *tbl, ID id, VALUE val) hash_id_table_insert_key(hash, keys[i], values[i]); } + /* free list keys/values */ + xfree(keys); +#if ID_TABLE_USE_CALC_VALUES == 0 + xfree(values); +#endif assert(LIST_P(tbl) == 0); } return r; |