mirror of
https://github.com/python/cpython.git
synced 2025-08-03 16:39:00 +00:00
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*.
This commit is contained in:
parent
50981b8242
commit
3f1af5c42e
6 changed files with 19 additions and 20 deletions
|
@ -1295,10 +1295,15 @@ check_duplicates(PyObject *list)
|
|||
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;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue