Index: Modules/_tkinter.c =================================================================== --- Modules/_tkinter.c (revision 67276) +++ Modules/_tkinter.c (working copy) @@ -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; + PyObject *self, *func, *arg, *res, *s; int i, rv; Tcl_Obj *obj_res; @@ -1923,7 +1923,13 @@ return PythonCmd_Error(interp); for (i = 0; i < (argc - 1); i++) { - PyObject *s = PyUnicode_FromString(argv[i + 1]); + if (strlen(argv[i + 1]) != Tcl_NumUtfChars(argv[i + 1], -1)) { + char *a = argv[i + 1]; + s = PyUnicode_FromUnicode((Py_UNICODE *)a, strlen(a)); + } + else { + s = PyUnicode_FromString(argv[i + 1]); + } if (!s || PyTuple_SetItem(arg, i, s)) { Py_DECREF(arg); return PythonCmd_Error(interp);