From 86a762ce56cd44db69ccff2e02587ed748a3ad04 Mon Sep 17 00:00:00 2001 From: Peter Zhu Date: Mon, 29 Jul 2024 11:07:47 -0400 Subject: [PATCH] [ruby/reline] Fix memory leak in setupterm (https://github.com/ruby/reline/pull/733) The allocated Fiddle::Pointer never gets freed because it doesn't have a free function defined for when it gets garbage collected. This commit changes it to use the default free function. https://github.com/ruby/reline/commit/0796dcd497 --- lib/reline/terminfo.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/reline/terminfo.rb b/lib/reline/terminfo.rb index 1eb371464b..c2b1f681b4 100644 --- a/lib/reline/terminfo.rb +++ b/lib/reline/terminfo.rb @@ -83,7 +83,7 @@ module Reline::Terminfo end def self.setupterm(term, fildes) - errret_int = Fiddle::Pointer.malloc(Fiddle::SIZEOF_INT) + errret_int = Fiddle::Pointer.malloc(Fiddle::SIZEOF_INT, Fiddle::RUBY_FREE) ret = @setupterm.(term, fildes, errret_int) case ret when 0 # OK