From 38bbb9673fc0fb69f890e8675d910eea646350f7 Mon Sep 17 00:00:00 2001 From: nagai Date: Wed, 8 Sep 2004 06:23:41 +0000 Subject: * ext/tcltklib/tcltklib.c (ip_init): cannot create a IP at level 4 * ext/tk/lib/multi-tk.rb: improve 'exit' operation, security check, and error treatment * ext/tk/lib/multi-tk.rb: allow a trusted slave IP to create slave IPs. * ext/tk/lib/tk/listbox.rb: add TkListbox#value, value=, clear, and erase * ext/tk/lib/tk/text.rb: add TkText#clear and erase git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/tcltklib/tcltklib.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'ext/tcltklib/tcltklib.c') diff --git a/ext/tcltklib/tcltklib.c b/ext/tcltklib/tcltklib.c index b750e55d6f..657c5765b3 100644 --- a/ext/tcltklib/tcltklib.c +++ b/ext/tcltklib/tcltklib.c @@ -2848,6 +2848,11 @@ ip_init(argc, argv, self) int with_tk = 1; Tk_Window mainWin; + /* security check */ + if (ruby_safe_level >= 4) { + rb_raise(rb_eSecurityError, "Cannot create a TclTkIp object at level %d", ruby_safe_level); + } + /* create object */ Data_Get_Struct(self, struct tcltkip, ptr); ptr = ALLOC(struct tcltkip); -- cgit v1.2.3