From 417c648f084713e2d6fd8d6d267a7114b711ba70 Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Tue, 23 Mar 2021 12:02:27 -0700 Subject: [PATCH] Free iv index table IV index tables weren't being freed. This program would leak memory: ```ruby loop do k = Class.new do def initialize @a = 1 @b = 1 @c = 1 @d = 1 @e = 1 @f = 1 @g = 1 end end k.new end ``` This commit fixes the leak. --- gc.c | 1 + 1 file changed, 1 insertion(+) diff --git a/gc.c b/gc.c index 1f161b81f4..f7deedcbcd 100644 --- a/gc.c +++ b/gc.c @@ -2628,6 +2628,7 @@ static void iv_index_tbl_free(struct st_table *tbl) { st_foreach(tbl, free_iv_index_tbl_free_i, 0); + st_free_table(tbl); } // alive: if false, target pointers can be freed already.