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 --- test/ruby/test_symbol.rb | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'test') diff --git a/test/ruby/test_symbol.rb b/test/ruby/test_symbol.rb index a25e6fb5d2..e2f9bfb56c 100644 --- a/test/ruby/test_symbol.rb +++ b/test/ruby/test_symbol.rb @@ -230,4 +230,12 @@ class TestSymbol < Test::Unit::TestCase end assert_nothing_raised(NoMethodError, bug10259) {obj.send("unagi=".intern, 1)} end + + def test_symbol_fstr_leak + bug10686 = '[ruby-core:67268] [Bug #10686]' + x = 0 + assert_no_memory_leak([], '', <<-"end;", bug10686) + 200_000.times { |i| i.to_s.to_sym } + end; + end end -- cgit v1.2.3