|
Jerry James |
3d927cd |
--- gcl-tk/tkMain.c.orig 2014-02-05 09:12:48.539168683 -0700
|
|
Jerry James |
3d927cd |
+++ gcl-tk/tkMain.c 2014-02-05 09:24:13.138923809 -0700
|
|
Jerry James |
3d927cd |
@@ -42,6 +42,11 @@
|
|
Jerry James |
3d927cd |
#if (TK_MINOR_VERSION==0 && TK_MAJOR_VERSION==4)
|
|
Jerry James |
3d927cd |
#define TkCreateMainWindow Tk_CreateMainWindow
|
|
Jerry James |
3d927cd |
#endif
|
|
Jerry James |
3d927cd |
+#if TCL_MAJOR_VERSION >= 8
|
|
Jerry James |
3d927cd |
+#define INTERP_RESULT(interp) Tcl_GetStringResult(interp)
|
|
Jerry James |
3d927cd |
+#else
|
|
Jerry James |
3d927cd |
+#define INTERP_RESULT(interp) (interp)->result
|
|
Jerry James |
3d927cd |
+#endif
|
|
Jerry James |
3d927cd |
|
|
Jerry James |
3d927cd |
|
|
Jerry James |
3d927cd |
/*-------------------------------------------------------------------*/
|
|
Jerry James |
3d927cd |
@@ -206,7 +211,7 @@
|
|
Jerry James |
3d927cd |
|
|
Jerry James |
3d927cd |
if (Tk_ParseArgv(interp, (Tk_Window) NULL, &argc, (const char **)argv, argTable, 0)
|
|
Jerry James |
3d927cd |
!= TCL_OK) {
|
|
Jerry James |
3d927cd |
- fprintf(stderr, "%s\n", interp->result);
|
|
Jerry James |
3d927cd |
+ fprintf(stderr, "%s\n", INTERP_RESULT(interp));
|
|
Jerry James |
3d927cd |
exit(1);
|
|
Jerry James |
3d927cd |
}
|
|
Jerry James |
3d927cd |
if (name == NULL) {
|
|
Jerry James |
3d927cd |
@@ -239,7 +244,7 @@
|
|
Jerry James |
3d927cd |
|
|
Jerry James |
3d927cd |
/* mainWindow = TkCreateMainWindow(interp, display, name/\* , "Tk" *\/); */
|
|
Jerry James |
3d927cd |
/* if (mainWindow == NULL) { */
|
|
Jerry James |
3d927cd |
-/* fprintf(stderr, "%s\n", interp->result); */
|
|
Jerry James |
3d927cd |
+/* fprintf(stderr, "%s\n", INTERP_RESULT(interp)); */
|
|
Jerry James |
3d927cd |
/* exit(1); */
|
|
Jerry James |
3d927cd |
/* } */
|
|
Jerry James |
3d927cd |
/* #ifndef __MINGW32__ */
|
|
Jerry James |
3d927cd |
@@ -290,7 +295,7 @@
|
|
Jerry James |
3d927cd |
*/
|
|
Jerry James |
3d927cd |
|
|
Jerry James |
3d927cd |
if (Tcl_AppInit(interp) != TCL_OK) {
|
|
Jerry James |
3d927cd |
- fprintf(stderr, "Tcl_AppInit failed: %s\n", interp->result);
|
|
Jerry James |
3d927cd |
+ fprintf(stderr, "Tcl_AppInit failed: %s\n", INTERP_RESULT(interp));
|
|
Jerry James |
3d927cd |
}
|
|
Jerry James |
3d927cd |
|
|
Jerry James |
3d927cd |
/*
|
|
Jerry James |
3d927cd |
@@ -300,7 +305,7 @@
|
|
Jerry James |
3d927cd |
if (geometry != NULL) {
|
|
Jerry James |
3d927cd |
code = Tcl_VarEval(interp, "wm geometry . ", geometry, (char *) NULL);
|
|
Jerry James |
3d927cd |
if (code != TCL_OK) {
|
|
Jerry James |
3d927cd |
- fprintf(stderr, "%s\n", interp->result);
|
|
Jerry James |
3d927cd |
+ fprintf(stderr, "%s\n", INTERP_RESULT(interp));
|
|
Jerry James |
3d927cd |
}
|
|
Jerry James |
3d927cd |
}
|
|
Jerry James |
3d927cd |
|
|
Jerry James |
3d927cd |
@@ -330,13 +335,13 @@
|
|
Jerry James |
3d927cd |
|
|
Jerry James |
3d927cd |
fullName = Tcl_TildeSubst(interp, tcl_RcFileName, &buffer);
|
|
Jerry James |
3d927cd |
if (fullName == NULL) {
|
|
Jerry James |
3d927cd |
- fprintf(stderr, "%s\n", interp->result);
|
|
Jerry James |
3d927cd |
+ fprintf(stderr, "%s\n", INTERP_RESULT(interp));
|
|
Jerry James |
3d927cd |
} else {
|
|
Jerry James |
3d927cd |
f = fopen(fullName, "r");
|
|
Jerry James |
3d927cd |
if (f != NULL) {
|
|
Jerry James |
3d927cd |
code = Tcl_EvalFile(interp, fullName);
|
|
Jerry James |
3d927cd |
if (code != TCL_OK) {
|
|
Jerry James |
3d927cd |
- fprintf(stderr, "%s\n", interp->result);
|
|
Jerry James |
3d927cd |
+ fprintf(stderr, "%s\n", INTERP_RESULT(interp));
|
|
Jerry James |
3d927cd |
}
|
|
Jerry James |
3d927cd |
fclose(f);
|
|
Jerry James |
3d927cd |
}
|
|
Jerry James |
3d927cd |
@@ -371,7 +376,7 @@
|
|
Jerry James |
3d927cd |
error:
|
|
Jerry James |
3d927cd |
msg = Tcl_GetVar(interp, "errorInfo", TCL_GLOBAL_ONLY);
|
|
Jerry James |
3d927cd |
if (msg == NULL) {
|
|
Jerry James |
3d927cd |
- msg = interp->result;
|
|
Jerry James |
3d927cd |
+ msg = INTERP_RESULT(interp);
|
|
Jerry James |
3d927cd |
}
|
|
Jerry James |
3d927cd |
dfprintf(stderr, "%s\n", msg);
|
|
Jerry James |
3d927cd |
Tcl_Eval(interp, errorExitCmd);
|
|
Jerry James |
3d927cd |
@@ -496,13 +501,13 @@
|
|
Jerry James |
3d927cd |
|| code)
|
|
Jerry James |
3d927cd |
{
|
|
Jerry James |
3d927cd |
char buf[4];
|
|
Jerry James |
3d927cd |
- char *p = buf;
|
|
Jerry James |
3d927cd |
+ char *p = buf, *string;
|
|
Jerry James |
3d927cd |
/*header */
|
|
Jerry James |
3d927cd |
*p++ = (code ? '1' : '0');
|
|
Jerry James |
3d927cd |
bcopy(msg->msg_id,p,3);
|
|
Jerry James |
3d927cd |
/* end header */
|
|
Jerry James |
3d927cd |
- if(sock_write_str2(dsfd, m_reply, buf, 4 ,
|
|
Jerry James |
3d927cd |
- interp->result, strlen(interp->result))
|
|
Jerry James |
3d927cd |
+ string = INTERP_RESULT(interp);
|
|
Jerry James |
3d927cd |
+ if(sock_write_str2(dsfd, m_reply, buf, 4, string, strlen(string))
|
|
Jerry James |
3d927cd |
< 0)
|
|
Jerry James |
3d927cd |
{ /* what do we want to do if the write failed */}
|
|
Jerry James |
3d927cd |
|
|
Jerry James |
3d927cd |
@@ -686,7 +691,7 @@
|
|
Jerry James |
3d927cd |
code = Tcl_Eval(interp, szCmd);
|
|
Jerry James |
3d927cd |
if (code != TCL_OK)
|
|
Jerry James |
3d927cd |
{
|
|
Jerry James |
3d927cd |
- dfprintf(stderr, "TCL Error int bind : %s\n", interp->result);
|
|
Jerry James |
3d927cd |
+ dfprintf(stderr, "TCL Error int bind : %s\n", INTERP_RESULT(interp));
|
|
Jerry James |
3d927cd |
|
|
Jerry James |
3d927cd |
}
|
|
Jerry James |
3d927cd |
return code;
|