Mercurial > cpython-lru_cache-weakref
diff Objects/typeobject.c @ 59858:9714f8a77b16 3.1
Merged revisions 78875 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r78875 | victor.stinner | 2010-03-12 18:00:41 +0100 (ven., 12 mars 2010) | 5 lines
Issue #6697: use %U format instead of _PyUnicode_AsString(), because
_PyUnicode_AsString() was not checked for error (NULL).
The unicode string is no more truncated to 200 or 400 *bytes*.
........
| author | Victor Stinner <victor.stinner@haypocalc.com> |
|---|---|
| date | Sun, 21 Mar 2010 21:05:53 +0000 |
| parents | 59cf5f808c24 |
| children | f197407bdba2 |
line wrap: on
line diff
--- a/Objects/typeobject.c Sun Mar 21 20:41:54 2010 +0000 +++ b/Objects/typeobject.c Sun Mar 21 21:05:53 2010 +0000 @@ -1295,10 +1295,15 @@ for (j = i + 1; j < n; j++) { if (PyList_GET_ITEM(list, j) == o) { o = class_name(o); - PyErr_Format(PyExc_TypeError, - "duplicate base class %.400s", - o ? _PyUnicode_AsString(o) : "?"); - Py_XDECREF(o); + if (o != NULL) { + PyErr_Format(PyExc_TypeError, + "duplicate base class %U", + o); + Py_DECREF(o); + } else { + PyErr_SetString(PyExc_TypeError, + "duplicate base class"); + } return -1; } }
