aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-07-11 09:04:00 +0000
committernagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-07-11 09:04:00 +0000
commit2ea953a7e776ac63f14d196f2717a556a76d7506 (patch)
tree8501c6816402e878b47df883796abdb3f3422030
parent6f535f34c54e06689f30178cc2bef2b511eac6a9 (diff)
downloadruby-2ea953a7e776ac63f14d196f2717a556a76d7506.tar.gz
* ext/tk/lib/multi-tk.rb: security fix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10514 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog4
-rw-r--r--ext/tk/lib/multi-tk.rb8
-rw-r--r--ext/tk/lib/tk.rb2
3 files changed, 11 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index fff78d5ff5..56e59ea004 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Tue Jul 11 18:00:57 2006 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
+
+ * ext/tk/lib/multi-tk.rb: security fix.
+
Tue Jul 11 17:28:08 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* string.c (rb_str_dump): need to extend len for \b.
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'