]> granicus.if.org Git - python/commitdiff
Check for TclError when reading variables. Fixes #807314.
authorMartin v. Löwis <martin@v.loewis.de>
Fri, 3 Oct 2003 17:12:26 +0000 (17:12 +0000)
committerMartin v. Löwis <martin@v.loewis.de>
Fri, 3 Oct 2003 17:12:26 +0000 (17:12 +0000)
Backported to 2.3.

Modules/_tkinter.c

index 5253a106032dcce1b7adc5c66c2f6033b3cf1a1f..02e4feb47f30df4ee8b7b060165e13522898228e 100644 (file)
@@ -1647,11 +1647,15 @@ GetVar(PyObject *self, PyObject *args, int flags)
        ENTER_TCL
        tres = Tcl_GetVar2Ex(Tkapp_Interp(self), name1, name2, flags);
        ENTER_OVERLAP
-       if (((TkappObject*)self)->wantobjects) {
-               res = FromObj(self, tres);
-       }
-       else {
-               res = PyString_FromString(Tcl_GetString(tres));
+       if (tres == NULL) {
+               PyErr_SetString(Tkinter_TclError, Tcl_GetStringResult(Tkapp_Interp(self)));
+       } else {
+               if (((TkappObject*)self)->wantobjects) {
+                       res = FromObj(self, tres);
+               }
+               else {
+                       res = PyString_FromString(Tcl_GetString(tres));
+               }
        }
        LEAVE_OVERLAP_TCL
        return res;