From 8a4c1e5001392a793650f6d9d0da4882f840db20 Mon Sep 17 00:00:00 2001 From: nagai Date: Tue, 11 Jul 2006 09:04:00 +0000 Subject: * ext/tk/lib/multi-tk.rb: security fix. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10514 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/tk/lib/multi-tk.rb | 8 ++++++-- ext/tk/lib/tk.rb | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) (limited to 'ext') diff --git a/ext/tk/lib/multi-tk.rb b/ext/tk/lib/multi-tk.rb index 645e5ca2ea..0211a15060 100644 --- a/ext/tk/lib/multi-tk.rb +++ b/ext/tk/lib/multi-tk.rb @@ -755,7 +755,9 @@ class MultiTkIp @pseudo_toplevel = [false, nil] def self.__pseudo_toplevel - self.__pseudo_toplevel_evaluable? && @pseudo_toplevel[1] + Thread.current.group == ThreadGroup::Default && + MultiTkIp.__getip == @@DEFAULT_MASTER && + self.__pseudo_toplevel_evaluable? && @pseudo_toplevel[1] end def self.__pseudo_toplevel=(m) @@ -1757,7 +1759,9 @@ end class MultiTkIp # instance method def __pseudo_toplevel - self.__pseudo_toplevel_evaluable? && @pseudo_toplevel[1] + ip = MultiTkIp.__getip + (ip == @@DEFAULT_MASTER || ip == self) && + self.__pseudo_toplevel_evaluable? && @pseudo_toplevel[1] end def __pseudo_toplevel=(m) diff --git a/ext/tk/lib/tk.rb b/ext/tk/lib/tk.rb index 32360ac144..4e05af5ccc 100644 --- a/ext/tk/lib/tk.rb +++ b/ext/tk/lib/tk.rb @@ -4581,7 +4581,7 @@ end #Tk.freeze module Tk - RELEASE_DATE = '2006-07-10'.freeze + RELEASE_DATE = '2006-07-11'.freeze autoload :AUTO_PATH, 'tk/variable' autoload :TCL_PACKAGE_PATH, 'tk/variable' -- cgit v1.2.3