diff options
author | nagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2006-04-18 08:43:10 +0000 |
---|---|---|
committer | nagai <nagai@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2006-04-18 08:43:10 +0000 |
commit | 8784f9c23558004e3665d36c0ebdcfa2b33d7cae (patch) | |
tree | 7d4447e7b795bd31e8bb0569643e2e611fc09f63 /ext/tk/stubs.c | |
parent | 434dce137bdf4ba77466b25019b1cbb9bd6b4a56 (diff) |
* 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/branches/ruby_1_8@10096 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/tk/stubs.c')
-rw-r--r-- | ext/tk/stubs.c | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/ext/tk/stubs.c b/ext/tk/stubs.c index cf362f4e12..23ff42a4f4 100644 --- a/ext/tk/stubs.c +++ b/ext/tk/stubs.c @@ -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; } |