diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | ext/tk/tcltklib.c | 8 |
2 files changed, 10 insertions, 3 deletions
@@ -1,3 +1,8 @@ +Fri Apr 21 15:19:13 2006 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp> + + * ext/tk/tcltklib.c (lib_eventloop_ensure): refer freed pointer + [ruby-core:07744] and memory leak. + Tue Apr 18 17:40:37 2006 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp> * ext/tk/lib/multi-tk.rb: add a binding to a container for a slave IP. 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; } |