diff Objects/typeobject.c @ 42019:f5b65731bd6c

Expect unicode in class_name.
author Martin v. Löwis <martin@v.loewis.de>
date Sun, 10 Jun 2007 21:13:34 +0000
parents cd125fe83051
children 160b7318a3ca
line wrap: on
line diff
--- a/Objects/typeobject.c	Sun Jun 10 21:09:40 2007 +0000
+++ b/Objects/typeobject.c	Sun Jun 10 21:13:34 2007 +0000
@@ -1010,7 +1010,7 @@
 	}
 	if (name == NULL)
 		return NULL;
-	if (!PyString_Check(name)) {
+	if (!PyUnicode_Check(name)) {
 		Py_DECREF(name);
 		return NULL;
 	}
@@ -1032,7 +1032,7 @@
 				o = class_name(o);
 				PyErr_Format(PyExc_TypeError,
 					     "duplicate base class %s",
-					     o ? PyString_AS_STRING(o) : "?");
+					     o ? PyUnicode_AsString(o) : "?");
 				Py_XDECREF(o);
 				return -1;
 			}
@@ -1078,7 +1078,7 @@
 	while (PyDict_Next(set, &i, &k, &v) && (size_t)off < sizeof(buf)) {
 		PyObject *name = class_name(k);
 		off += PyOS_snprintf(buf + off, sizeof(buf) - off, " %s",
-				     name ? PyString_AS_STRING(name) : "?");
+				     name ? PyUnicode_AsString(name) : "?");
 		Py_XDECREF(name);
 		if (--n && (size_t)(off+1) < sizeof(buf)) {
 			buf[off++] = ',';