From 8717a9ec861ac129d3c93f8eb44e8c3ef07ed9af Mon Sep 17 00:00:00 2001 From: normal Date: Thu, 1 Jan 2015 02:18:40 +0000 Subject: symbol.c: fix memory leak from global fstr hash * symbol.c (rb_gc_free_dsymbol): delete from global fstr hash * test/ruby/test_symbol.rb (test_symbol_fstr_leak): test for bug [ruby-core:67268] [Bug #10686] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- symbol.c | 1 + 1 file changed, 1 insertion(+) (limited to 'symbol.c') diff --git a/symbol.c b/symbol.c index f067ebe3f9..1127020d17 100644 --- a/symbol.c +++ b/symbol.c @@ -664,6 +664,7 @@ rb_gc_free_dsymbol(VALUE sym) if (str) { RSYMBOL(sym)->fstr = 0; unregister_sym(str, sym); + rb_hash_delete_entry(global_symbols.dsymbol_fstr_hash, str); } } -- cgit v1.2.3