diff options
Diffstat (limited to 'generic')
-rw-r--r-- | generic/tcl.h | 6 | ||||
-rw-r--r-- | generic/tclEncoding.c | 25 |
2 files changed, 27 insertions, 4 deletions
diff --git a/generic/tcl.h b/generic/tcl.h index a08edde..7b75414 100644 --- a/generic/tcl.h +++ b/generic/tcl.h @@ -2424,6 +2424,12 @@ const char * TclTomMathInitializeStubs(Tcl_Interp *interp, * TODO - tommath stubs export goes here! */ +/* Tcl_InitSubsystems, see TIP #414 */ + +#ifndef USE_TCL_STUBS + EXTERN const char *Tcl_InitSubsystems(TCL_NORETURN1 Tcl_PanicProc *panicProc); +#endif + /* * Public functions that are not accessible via the stubs table. * Tcl_GetMemoryInfo is needed for AOLserver. [Bug 1868171] diff --git a/generic/tclEncoding.c b/generic/tclEncoding.c index 4ae017d..88f4d3a 100644 --- a/generic/tclEncoding.c +++ b/generic/tclEncoding.c @@ -1440,20 +1440,37 @@ Tcl_UtfToExternal( /* *--------------------------------------------------------------------------- * - * Tcl_FindExecutable -- + * Tcl_InitSubsystems/Tcl_FindExecutable -- * - * This function computes the absolute path name of the current - * application, given its argv[0] value. + * This function initializes everything needed for the Tcl library + * to be able to operate. * * Results: * None. * * Side effects: * The absolute pathname for the application is computed and stored to be - * returned later be [info nameofexecutable]. + * returned later by [info nameofexecutable]. * *--------------------------------------------------------------------------- */ +MODULE_SCOPE const TclStubs tclStubs; + +static const struct { + const TclStubs *stubs; + const char version[12]; +} stubInfo = { + &tclStubs, TCL_PATCH_LEVEL +}; + +const char * +Tcl_InitSubsystems(TCL_NORETURN1 Tcl_PanicProc *panicProc) +{ + Tcl_SetPanicProc(panicProc); + TclInitSubsystems(); + return stubInfo.version; +} + #undef Tcl_FindExecutable void Tcl_FindExecutable( |