[Python-checkins] CVS: python/dist/src/Modules _tkinter.c,1.113,1.114
Guido van Rossum
python-dev@python.org
Thu, 12 Oct 2000 10:14:49 -0700
Update of /cvsroot/python/python/dist/src/Modules
In directory slayer.i.sourceforge.net:/tmp/cvs-serv2266
Modified Files:
_tkinter.c
Log Message:
Fix for Bug #116453.
Direct use of interp->result is deprecated; changing this to
Tcl_GetStringResult(interp) everywhere fixed the problem of losing the
error message with TclError exceptions, on Windows.
Index: _tkinter.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Modules/_tkinter.c,v
retrieving revision 1.113
retrieving revision 1.114
diff -C2 -r1.113 -r1.114
*** _tkinter.c 2000/10/06 16:58:26 1.113
--- _tkinter.c 2000/10/12 17:14:46 1.114
***************
*** 210,214 ****
#define Tkapp_Check(v) ((v)->ob_type == &Tkapp_Type)
#define Tkapp_Interp(v) (((TkappObject *) (v))->interp)
! #define Tkapp_Result(v) (((TkappObject *) (v))->interp->result)
#define DEBUG_REFCNT(v) (printf("DEBUG: id=%p, refcnt=%i\n", \
--- 210,214 ----
#define Tkapp_Check(v) ((v)->ob_type == &Tkapp_Type)
#define Tkapp_Interp(v) (((TkappObject *) (v))->interp)
! #define Tkapp_Result(v) Tcl_GetStringResult(Tkapp_Interp(v))
#define DEBUG_REFCNT(v) (printf("DEBUG: id=%p, refcnt=%i\n", \
***************
*** 421,429 ****
main = Tk_MainWindow(interp);
if (Tcl_Init(interp) == TCL_ERROR) {
! PySys_WriteStderr("Tcl_Init error: %s\n", interp->result);
return TCL_ERROR;
}
if (Tk_Init(interp) == TCL_ERROR) {
! PySys_WriteStderr("Tk_Init error: %s\n", interp->result);
return TCL_ERROR;
}
--- 421,429 ----
main = Tk_MainWindow(interp);
if (Tcl_Init(interp) == TCL_ERROR) {
! PySys_WriteStderr("Tcl_Init error: %s\n", Tcl_GetStringResult(interp));
return TCL_ERROR;
}
if (Tk_Init(interp) == TCL_ERROR) {
! PySys_WriteStderr("Tk_Init error: %s\n", Tcl_GetStringResult(interp));
return TCL_ERROR;
}
***************
*** 740,750 ****
if (Py_VerboseFlag >= 2)
PySys_WriteStderr("... error: '%s'\n",
! interp->result);
Tkinter_Error(self);
}
else {
if (Py_VerboseFlag >= 2)
! PySys_WriteStderr("-> '%s'\n", interp->result);
! res = PyString_FromString(interp->result);
}
LEAVE_OVERLAP_TCL
--- 740,750 ----
if (Py_VerboseFlag >= 2)
PySys_WriteStderr("... error: '%s'\n",
! Tcl_GetStringResult(interp));
Tkinter_Error(self);
}
else {
if (Py_VerboseFlag >= 2)
! PySys_WriteStderr("-> '%s'\n", Tcl_GetStringResult(interp));
! res = PyString_FromString(Tcl_GetStringResult(interp));
}
LEAVE_OVERLAP_TCL