diff Modules/_tkinter.c @ 49748:e2d2a7a6e831

Issue #4313: Fixed segfault on IDLE exit. Reverted r57540 and reopened Issue #1028.
author Hirokazu Yamamoto <ocean-city@m2.ccsnet.ne.jp>
date Tue, 18 Nov 2008 04:33:04 +0000
parents 85b67fb5672b
children 21d7e9e87591
line wrap: on
line diff
--- a/Modules/_tkinter.c	Tue Nov 18 00:07:10 2008 +0000
+++ b/Modules/_tkinter.c	Tue Nov 18 04:33:04 2008 +0000
@@ -1906,7 +1906,7 @@
 PythonCmd(ClientData clientData, Tcl_Interp *interp, int argc, char *argv[])
 {
 	PythonCmd_ClientData *data = (PythonCmd_ClientData *)clientData;
-	PyObject *self, *func, *arg, *res, *s;
+	PyObject *self, *func, *arg, *res;
 	int i, rv;
 	Tcl_Obj *obj_res;
 
@@ -1923,13 +1923,7 @@
 		return PythonCmd_Error(interp);
 
 	for (i = 0; i < (argc - 1); i++) {
-		if (11 == (i + 1)) {  /* the %A arg is the unicode char */
-			char *a = argv[i + 1];
-			s = PyUnicode_FromUnicode((Py_UNICODE *) a, strlen(a));
-		}
-		else {
-			s = PyUnicode_FromString(argv[i + 1]);
-		}
+		PyObject *s = PyUnicode_FromString(argv[i + 1]);
 		if (!s || PyTuple_SetItem(arg, i, s)) {
 			Py_DECREF(arg);
 			return PythonCmd_Error(interp);