diff options
author | eban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-08-18 08:14:54 +0000 |
---|---|---|
committer | eban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-08-18 08:14:54 +0000 |
commit | ff9782cfc9d1bb9342331096720386a7c881daed (patch) | |
tree | 0a403da1ce27e20a1ea32ded3a7c2f9b2fe93860 /ext/tcltklib | |
parent | e2d451b5794baf790a41682caf91244f0d5972bf (diff) |
* ext/tcltklib/stubs.c (ruby_tcltk_stubs): need to call
Tcl_FindExecutable() for Tcl/Tk 8.4.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/tcltklib')
-rw-r--r-- | ext/tcltklib/stubs.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/ext/tcltklib/stubs.c b/ext/tcltklib/stubs.c index 56cc8ca921..8faa4ca24e 100644 --- a/ext/tcltklib/stubs.c +++ b/ext/tcltklib/stubs.c @@ -34,8 +34,9 @@ ruby_tcltk_stubs() { DL_HANDLE tcl_dll; DL_HANDLE tk_dll; + void (*p_Tcl_FindExecutable)(const char *); Tcl_Interp *(*p_Tcl_CreateInterp)(); - int (*p_Tk_Init) _((Tcl_Interp *)); + int (*p_Tk_Init)(Tcl_Interp *); Tcl_Interp *tcl_ip; int n; char *ruby_tcl_dll = 0; @@ -72,6 +73,12 @@ ruby_tcltk_stubs() if (!tcl_dll || !tk_dll) return -1; + p_Tcl_FindExecutable = (void (*)(const char *))DL_SYM(tcl_dll, "Tcl_FindExecutable"); + if (!p_Tcl_FindExecutable) + return -7; + + p_Tcl_FindExecutable("ruby"); + p_Tcl_CreateInterp = (Tcl_Interp *(*)())DL_SYM(tcl_dll, "Tcl_CreateInterp"); if (!p_Tcl_CreateInterp) return -2; @@ -80,7 +87,7 @@ ruby_tcltk_stubs() if (!tcl_ip) return -3; - p_Tk_Init = (int (*) _((Tcl_Interp *)))DL_SYM(tk_dll, "Tk_Init"); + p_Tk_Init = (int (*)(Tcl_Interp *))DL_SYM(tk_dll, "Tk_Init"); if (!p_Tk_Init) return -4; (*p_Tk_Init)(tcl_ip); |