Fix memory leak in parser for invalid syntax
The strterm is leaked when there is invalid syntax. For example: 10.times do 100_000.times do begin RubyVM::InstructionSequence.compile('private def foo = puts "Hello"') rescue SyntaxError end end puts `ps -o rss= -p #{$$}` end Before: 20384 26256 32592 36720 42016 47888 53248 57456 62928 65936 After: 16720 17488 17616 17616 17616 17616 17616 17616 17616 16032 Co-Authored-By: Kevin Newton <kddnewton@gmail.com>
This commit is contained in:
parent
38bc107f0b
commit
02d8bad6e1
Loading…
x
Reference in New Issue
Block a user