mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* ext/tk/lib/multi-tk.rb: add a binding to a container for a slave IP.
* ext/tk/lib/tk.rb: update RELEASE_DATE. * ext/tk/tcltklib.c: forget to reset a Tcl interpreter. * ext/tk/stubs.c: fix potential bugs about handling rb_argv0. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10096 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
ef65804903
commit
bce4ed2f72
5 changed files with 42 additions and 12 deletions
10
ChangeLog
10
ChangeLog
|
@ -1,3 +1,13 @@
|
|||
Tue Apr 18 17:40:37 2006 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
|
||||
|
||||
* ext/tk/lib/multi-tk.rb: add a binding to a container for a slave IP.
|
||||
|
||||
* ext/tk/lib/tk.rb: update RELEASE_DATE.
|
||||
|
||||
* ext/tk/tcltklib.c: forget to reset a Tcl interpreter.
|
||||
|
||||
* ext/tk/stubs.c: fix potential bugs about handling rb_argv0.
|
||||
|
||||
Sat Apr 8 18:06:28 2006 Masaki Suketa <masaki.suketa@nifty.ne.jp>
|
||||
|
||||
* ext/win32ole/win32ole.c: add WIN32OLE_METHOD#inspect,
|
||||
|
|
|
@ -944,6 +944,7 @@ class MultiTkIp
|
|||
dup_keys['fill'] = :both unless dup_keys.key?('fill')
|
||||
dup_keys['expand'] = true unless dup_keys.key?('expand')
|
||||
c = TkFrame.new(top, :container=>true).pack(dup_keys)
|
||||
c.bind('Destroy', proc{top.destroy})
|
||||
|
||||
# return keys
|
||||
loadTk_keys['use'] = TkWinfo.id(c)
|
||||
|
|
|
@ -4559,7 +4559,7 @@ end
|
|||
#Tk.freeze
|
||||
|
||||
module Tk
|
||||
RELEASE_DATE = '2006-04-06'.freeze
|
||||
RELEASE_DATE = '2006-04-18'.freeze
|
||||
|
||||
autoload :AUTO_PATH, 'tk/variable'
|
||||
autoload :TCL_PACKAGE_PATH, 'tk/variable'
|
||||
|
|
|
@ -141,7 +141,8 @@ ruby_open_tk_dll()
|
|||
char tk_name[20];
|
||||
|
||||
if (!tcl_dll) {
|
||||
int ret = ruby_open_tcl_dll(RSTRING(rb_argv0)->ptr);
|
||||
/* int ret = ruby_open_tcl_dll(RSTRING(rb_argv0)->ptr); */
|
||||
int ret = ruby_open_tcl_dll(rb_argv0 ? RSTRING(rb_argv0)->ptr : 0);
|
||||
if (ret != TCLTK_STUBS_OK) return ret;
|
||||
}
|
||||
|
||||
|
@ -212,7 +213,9 @@ ruby_tcl_create_ip_and_stubs_init(st)
|
|||
Tcl_Interp *(*p_Tcl_DeleteInterp)();
|
||||
|
||||
if (!tcl_dll) {
|
||||
int ret = ruby_open_tcl_dll(RSTRING(rb_argv0)->ptr);
|
||||
/* int ret = ruby_open_tcl_dll(RSTRING(rb_argv0)->ptr); */
|
||||
int ret = ruby_open_tcl_dll(rb_argv0 ? RSTRING(rb_argv0)->ptr : 0);
|
||||
|
||||
if (ret != TCLTK_STUBS_OK) {
|
||||
if (st) *st = ret;
|
||||
return (Tcl_Interp*)NULL;
|
||||
|
@ -345,7 +348,8 @@ ruby_tcltk_stubs()
|
|||
int st;
|
||||
Tcl_Interp *tcl_ip;
|
||||
|
||||
st = ruby_open_tcltk_dll(RSTRING(rb_argv0)->ptr);
|
||||
/* st = ruby_open_tcltk_dll(RSTRING(rb_argv0)->ptr); */
|
||||
st = ruby_open_tcltk_dll(rb_argv0 ? RSTRING(rb_argv0)->ptr : 0);
|
||||
switch(st) {
|
||||
case NO_FindExecutable:
|
||||
return -7;
|
||||
|
@ -407,7 +411,8 @@ ruby_open_tcl_dll(appname)
|
|||
int ruby_open_tk_dll()
|
||||
{
|
||||
if (!open_tcl_dll) {
|
||||
ruby_open_tcl_dll(RSTRING(rb_argv0)->ptr);
|
||||
/* ruby_open_tcl_dll(RSTRING(rb_argv0)->ptr); */
|
||||
ruby_open_tcl_dll(rb_argv0 ? RSTRING(rb_argv0)->ptr : 0);
|
||||
}
|
||||
|
||||
return TCLTK_STUBS_OK;
|
||||
|
@ -438,7 +443,8 @@ ruby_tcl_create_ip_and_stubs_init(st)
|
|||
Tcl_Interp *tcl_ip;
|
||||
|
||||
if (!open_tcl_dll) {
|
||||
ruby_open_tcl_dll(RSTRING(rb_argv0)->ptr);
|
||||
/* ruby_open_tcl_dll(RSTRING(rb_argv0)->ptr); */
|
||||
ruby_open_tcl_dll(rb_argv0 ? RSTRING(rb_argv0)->ptr : 0);
|
||||
}
|
||||
|
||||
if (st) *st = 0;
|
||||
|
@ -502,7 +508,8 @@ ruby_tk_stubs_safeinit(tcl_ip)
|
|||
int
|
||||
ruby_tcltk_stubs()
|
||||
{
|
||||
Tcl_FindExecutable(RSTRING(rb_argv0)->ptr);
|
||||
/* Tcl_FindExecutable(RSTRING(rb_argv0)->ptr); */
|
||||
Tcl_FindExecutable(rb_argv0 ? RSTRING(rb_argv0)->ptr : 0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
* Oct. 24, 1997 Y. Matsumoto
|
||||
*/
|
||||
|
||||
#define TCLTKLIB_RELEASE_DATE "2006-04-06"
|
||||
#define TCLTKLIB_RELEASE_DATE "2006-04-18"
|
||||
|
||||
#include "ruby.h"
|
||||
#include "rubysig.h"
|
||||
|
@ -5118,7 +5118,10 @@ ip_make_safe_core(interp, argc, argv)
|
|||
}
|
||||
|
||||
if (Tcl_MakeSafe(ptr->ip) == TCL_ERROR) {
|
||||
return rb_exc_new2(rb_eRuntimeError, Tcl_GetStringResult(ptr->ip));
|
||||
/* return rb_exc_new2(rb_eRuntimeError,
|
||||
Tcl_GetStringResult(ptr->ip)); */
|
||||
return create_ip_exc(interp, rb_eRuntimeError,
|
||||
Tcl_GetStringResult(ptr->ip));
|
||||
}
|
||||
|
||||
ptr->allow_ruby_exit = 0;
|
||||
|
@ -7050,7 +7053,10 @@ ip_get_variable2_core(interp, argc, argv)
|
|||
|
||||
if (ret == (Tcl_Obj*)NULL) {
|
||||
volatile VALUE exc;
|
||||
exc = rb_exc_new2(rb_eRuntimeError, Tcl_GetStringResult(ptr->ip));
|
||||
/* exc = rb_exc_new2(rb_eRuntimeError,
|
||||
Tcl_GetStringResult(ptr->ip)); */
|
||||
exc = create_ip_exc(interp, rb_eRuntimeError,
|
||||
Tcl_GetStringResult(ptr->ip));
|
||||
/* Tcl_Release(ptr->ip); */
|
||||
rbtk_release_ip(ptr);
|
||||
rb_thread_critical = thr_crit_bup;
|
||||
|
@ -7186,7 +7192,10 @@ ip_set_variable2_core(interp, argc, argv)
|
|||
|
||||
if (ret == (Tcl_Obj*)NULL) {
|
||||
volatile VALUE exc;
|
||||
exc = rb_exc_new2(rb_eRuntimeError, Tcl_GetStringResult(ptr->ip));
|
||||
/* exc = rb_exc_new2(rb_eRuntimeError,
|
||||
Tcl_GetStringResult(ptr->ip)); */
|
||||
exc = create_ip_exc(interp, rb_eRuntimeError,
|
||||
Tcl_GetStringResult(ptr->ip));
|
||||
/* Tcl_Release(ptr->ip); */
|
||||
rbtk_release_ip(ptr);
|
||||
rb_thread_critical = thr_crit_bup;
|
||||
|
@ -7303,7 +7312,10 @@ ip_unset_variable2_core(interp, argc, argv)
|
|||
|
||||
if (ptr->return_value == TCL_ERROR) {
|
||||
if (FIX2INT(flag) & TCL_LEAVE_ERR_MSG) {
|
||||
return rb_exc_new2(rb_eRuntimeError, Tcl_GetStringResult(ptr->ip));
|
||||
/* return rb_exc_new2(rb_eRuntimeError,
|
||||
Tcl_GetStringResult(ptr->ip)); */
|
||||
return create_ip_exc(interp, rb_eRuntimeError,
|
||||
Tcl_GetStringResult(ptr->ip));
|
||||
}
|
||||
return Qfalse;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue