summaryrefslogtreecommitdiffstats
path: root/ext/tk
diff options
context:
space:
mode:
authornagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-07-29 15:39:59 +0000
committernagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-07-29 15:39:59 +0000
commit69d24349c26e392f7f5c10a268527b59a3358152 (patch)
treedb80507aa1cd2f3d374fe7f5acb069cc1b7a1dc5 /ext/tk
parentaf7d26de1d47b536c897f45dfae2d3e1d03b3380 (diff)
downloadruby-69d24349c26e392f7f5c10a268527b59a3358152.tar.gz
ruby-69d24349c26e392f7f5c10a268527b59a3358152.tar.xz
ruby-69d24349c26e392f7f5c10a268527b59a3358152.zip
* bug fix
* change mainloop_abort_on_no_widget_cmd => mainloop_abort_on_exception ( to avoid thread timing trouble on accessing destroyed widgets ) git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@4217 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/tk')
-rw-r--r--ext/tk/lib/multi-tk.rb6
-rw-r--r--ext/tk/lib/tk.rb2
2 files changed, 7 insertions, 1 deletions
diff --git a/ext/tk/lib/multi-tk.rb b/ext/tk/lib/multi-tk.rb
index b08923e1d..e054f3dd9 100644
--- a/ext/tk/lib/multi-tk.rb
+++ b/ext/tk/lib/multi-tk.rb
@@ -25,6 +25,12 @@ MultiTkIp_OK.freeze
################################################
# methods for construction
class MultiTkIp
+
+ # ignore exception on the mainloop
+ TclTkLib.mainloop_abort_on_exception = false
+
+ ######################################
+
SLAVE_IP_ID = ['slave'.freeze, '00000']
@@IP_TABLE = {}
diff --git a/ext/tk/lib/tk.rb b/ext/tk/lib/tk.rb
index c6c0e799d..6ee5c36fb 100644
--- a/ext/tk/lib/tk.rb
+++ b/ext/tk/lib/tk.rb
@@ -3359,7 +3359,7 @@ class TkObject<TkKernel
private :tk_trace_variable
def destroy
- tk_call 'trace', 'vdelete', @tk_vn, 'w', @var_id if @var_id
+ tk_call 'trace', 'vdelete', @tk_vn, 'w', @var_id if defined? @var_id
end
end