Mercurial > cpython-lru_cache-weakref
diff Objects/object.c @ 42854:824b9d52e006
Use unicode and remove support for some uses of str8.
| author | Neal Norwitz <nnorwitz@gmail.com> |
|---|---|
| date | Sun, 26 Aug 2007 04:19:43 +0000 |
| parents | 522a3e3a03a9 |
| children | 1bac386c17cc |
line wrap: on
line diff
--- a/Objects/object.c Sun Aug 26 04:18:40 2007 +0000 +++ b/Objects/object.c Sun Aug 26 04:19:43 2007 +0000 @@ -357,7 +357,7 @@ PyObject * PyObject_Repr(PyObject *v) { - PyObject *ress, *resu; + PyObject *res; if (PyErr_CheckSignals()) return NULL; #ifdef USE_STACKCHECK @@ -371,21 +371,15 @@ else if (Py_Type(v)->tp_repr == NULL) return PyUnicode_FromFormat("<%s object at %p>", v->ob_type->tp_name, v); else { - ress = (*v->ob_type->tp_repr)(v); - if (!ress) - return NULL; - if (PyUnicode_Check(ress)) - return ress; - if (!PyString_Check(ress)) { + res = (*v->ob_type->tp_repr)(v); + if (res != NULL && !PyUnicode_Check(res)) { PyErr_Format(PyExc_TypeError, "__repr__ returned non-string (type %.200s)", - ress->ob_type->tp_name); - Py_DECREF(ress); + res->ob_type->tp_name); + Py_DECREF(res); return NULL; } - resu = PyUnicode_FromObject(ress); - Py_DECREF(ress); - return resu; + return res; } } @@ -413,7 +407,7 @@ { PyObject *res; if (v == NULL) - return PyString_FromString("<NULL>"); + return PyUnicode_FromString("<NULL>"); if (PyString_CheckExact(v)) { Py_INCREF(v); return v;
