From ed02f66eca55e3dd87219bb080f949f4346a15b2 Mon Sep 17 00:00:00 2001 From: nagai Date: Wed, 2 Jun 2010 16:24:29 +0000 Subject: * ext/tk/lib/tk.rb: fix typo and race condition. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 4 ++++ ext/tk/lib/tk.rb | 13 +++++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index cf7373967d..e15a3fb353 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Thu Jun 3 01:22:45 2010 Hidetoshi NAGAI + + * ext/tk/lib/tk.rb: fix typo and race condition. + Thu Jun 3 00:58:45 2010 Aaron Patterson * ext/dl/lib/dl/cparser.rb (parse_ctype): add backwards compatibility diff --git a/ext/tk/lib/tk.rb b/ext/tk/lib/tk.rb index 927cf18063..4beaaf932a 100644 --- a/ext/tk/lib/tk.rb +++ b/ext/tk/lib/tk.rb @@ -1229,7 +1229,8 @@ module TkCore INTERP_ROOT_CHECK = ConditionVariable.new INTERP_THREAD = Thread.new{ begin - Thread.current[:interp] = interp = TclTkIp.new(name, opts) + #Thread.current[:interp] = interp = TclTkIp.new(name, opts) + interp = TclTkIp.new(name, opts) rescue => e Thread.current[:interp] = e raise e @@ -1248,13 +1249,15 @@ module TkCore # like as 1.8, withdraw a root widget before calling Tk.mainloop interp._eval <e Thread.current[:status].value = e @@ -1836,7 +1840,8 @@ EOS end # like as 1.8, withdraw a root widget before calling Tk.mainloop - TkCore::INTERP._eval_without_enc('unset __initail_state_of_rubytk__') + TkCore::INTERP._eval_without_enc('catch {unset __initial_state_of_rubytk__}') + INTERP_THREAD.run begin TclTkLib.set_eventloop_window_mode(true) @@ -5693,7 +5698,7 @@ TkWidget = TkWindow #Tk.freeze module Tk - RELEASE_DATE = '2010-05-31'.freeze + RELEASE_DATE = '2010-06-03'.freeze autoload :AUTO_PATH, 'tk/variable' autoload :TCL_PACKAGE_PATH, 'tk/variable' -- cgit v1.2.3