From c05fd75befe5b6021e7926452d6813c3472f540f Mon Sep 17 00:00:00 2001 From: kosaki Date: Fri, 1 Jul 2011 02:08:48 +0000 Subject: * thread.c (do_select): fix memory leak. Patch by Eric Wong. Thank you! [Bug #4953] [ruby-core:37702] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32348 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ thread.c | 8 ++++++++ 2 files changed, 13 insertions(+) diff --git a/ChangeLog b/ChangeLog index 0bb2f1eb23..b80165670d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Fri Jul 1 11:07:43 2011 KOSAKI Motohiro + + * thread.c (do_select): fix memory leak. + Patch by Eric Wong. Thank you! [Bug #4953] [ruby-core:37702] + Fri Jul 1 08:21:28 2011 Koichi Sasada * vm_insnhelper.c (vm_getivar): check vm state version diff --git a/thread.c b/thread.c index 9e869069fc..3ef587b33f 100644 --- a/thread.c +++ b/thread.c @@ -2620,6 +2620,14 @@ do_select(int n, rb_fdset_t *read, rb_fdset_t *write, rb_fdset_t *except, break; } } + + if (read) + rb_fd_term(&orig_read); + if (write) + rb_fd_term(&orig_write); + if (except) + rb_fd_term(&orig_except); + return result; } -- cgit v1.2.3