Tcl_Interp *ip; /* valid, non-0 and useable if set */
Tcl_Obj *obj; /* non-0 iff set (but only test for 0/non-0) */
Tcl_Obj *xargs;
- int llength;
+ int llength; /* after set, is llength of script + xargs */
} ScriptToInvoke;
void cht_scriptinv_init(ScriptToInvoke *si);
void cht_scriptinv_cancel(ScriptToInvoke *si); /* then don't invoke */
/* no separate free function - just cancel */
+int cht_scriptinv_invoke_fg(ScriptToInvoke *si, int argc,
+ Tcl_Obj *const *argv);
+ /* if script fails, returns that error */
+
void cht_scriptinv_invoke(ScriptToInvoke *si, int argc, Tcl_Obj *const *argv);
+ /* if script fails, reports it with Tcl_BackgroundError */
/* from idtable.c */