This reverts r63675 based on the discussion in this thread:

http://mail.python.org/pipermail/python-dev/2008-June/079988.html

Python 2.6 should stick with PyString_* in its codebase.  The PyBytes_* names
in the spirit of 3.0 are available via a #define only.  See the email thread.
This commit is contained in:
Gregory P. Smith 2008-06-09 04:58:54 +00:00
parent e98839a1f4
commit dd96db63f6
173 changed files with 2275 additions and 2280 deletions

View file

@ -508,19 +508,19 @@ dotted_getattr(PyObject *obj, PyObject *attr)
}
#endif
if (!PyBytes_Check(attr)) {
if (!PyString_Check(attr)) {
PyErr_SetString(PyExc_TypeError,
"attribute name must be a string");
return NULL;
}
s = PyBytes_AS_STRING(attr);
s = PyString_AS_STRING(attr);
Py_INCREF(obj);
for (;;) {
PyObject *newobj, *str;
p = strchr(s, '.');
str = p ? PyBytes_FromStringAndSize(s, (p-s)) :
PyBytes_FromString(s);
str = p ? PyString_FromStringAndSize(s, (p-s)) :
PyString_FromString(s);
if (str == NULL) {
Py_DECREF(obj);
return NULL;