diff --git a/ChangeLog b/ChangeLog index 1bce06c548..9278ba9b04 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Fri Apr 21 15:19:13 2006 Hidetoshi NAGAI + + * ext/tk/tcltklib.c (lib_eventloop_ensure): refer freed pointer + [ruby-core:07744] and memory leak. + Fri Apr 21 12:14:52 2006 Yukihiro Matsumoto * ext/socket/socket.c: document update patch from Sam Roberts diff --git a/ext/tk/tcltklib.c b/ext/tk/tcltklib.c index ebc2ac5d76..03de109b49 100644 --- a/ext/tk/tcltklib.c +++ b/ext/tk/tcltklib.c @@ -4,7 +4,7 @@ * Oct. 24, 1997 Y. Matsumoto */ -#define TCLTKLIB_RELEASE_DATE "2006-04-18" +#define TCLTKLIB_RELEASE_DATE "2006-04-21" #include "ruby.h" #include "rubysig.h" @@ -1696,6 +1696,8 @@ lib_eventloop_ensure(args) rb_thread_critical = ptr->thr_crit_bup; + free(ptr); + return Qnil; } @@ -1724,10 +1726,10 @@ lib_eventloop_ensure(args) } } - free(ptr); - rb_thread_critical = ptr->thr_crit_bup; + free(ptr); + DUMP2("finish current eventloop %lx", current_evloop); return Qnil; }