diff options
author | nagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-09-09 05:03:21 +0000 |
---|---|---|
committer | nagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-09-09 05:03:21 +0000 |
commit | d782aad77de15ca3beb8999ed0f829d0db76aa46 (patch) | |
tree | 03c0f9966ae1fb4560ec9fa105038a71a02e348a /ext/tcltklib | |
parent | a8fc3fb8b03867cac3b10a71b8c2a06cbcefda10 (diff) | |
download | ruby-d782aad77de15ca3beb8999ed0f829d0db76aa46.tar.gz |
* ext/tcltklib/tcltklib.c (ip_init): change flag value for setting 'argv' and 'argv0' variable
* ext/tk/lib/remote-tk.rb: follow changes of multi-tk.rb
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/tcltklib')
-rw-r--r-- | ext/tcltklib/tcltklib.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/ext/tcltklib/tcltklib.c b/ext/tcltklib/tcltklib.c index 657c5765b3..0a2fcbd349 100644 --- a/ext/tcltklib/tcltklib.c +++ b/ext/tcltklib/tcltklib.c @@ -2884,12 +2884,14 @@ ip_init(argc, argv, self) /* without Tk */ with_tk = 0; } else { - Tcl_SetVar(ptr->ip, "argv", StringValuePtr(opts), 0); + /* Tcl_SetVar(ptr->ip, "argv", StringValuePtr(opts), 0); */ + Tcl_SetVar(ptr->ip, "argv", StringValuePtr(opts), TCL_GLOBAL_ONLY); } case 1: /* argv0 */ if (!NIL_P(argv0)) { - Tcl_SetVar(ptr->ip, "argv0", StringValuePtr(argv0), 0); + /* Tcl_SetVar(ptr->ip, "argv0", StringValuePtr(argv0), 0); */ + Tcl_SetVar(ptr->ip, "argv0", StringValuePtr(argv0), TCL_GLOBAL_ONLY); } case 0: /* no args */ @@ -2917,6 +2919,7 @@ ip_init(argc, argv, self) /* get main window */ mainWin = Tk_MainWindow(ptr->ip); + Tk_Preserve((ClientData)mainWin); /* add ruby command to the interpreter */ #if TCL_MAJOR_VERSION >= 8 @@ -3015,6 +3018,8 @@ ip_init(argc, argv, self) (ClientData)mainWin, (Tcl_CmdDeleteProc *)NULL); #endif + Tk_Release((ClientData)mainWin); + return self; } |