mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
Merging the py3k-pep3137 branch back into the py3k branch.
No detailed change log; just check out the change log for the py3k-pep3137 branch. The most obvious changes: - str8 renamed to bytes (PyString at the C level); - bytes renamed to buffer (PyBytes at the C level); - PyString and PyUnicode are no longer compatible. I.e. we now have an immutable bytes type and a mutable bytes type. The behavior of PyString was modified quite a bit, to make it more bytes-like. Some changes are still on the to-do list.
This commit is contained in:
parent
a19f80c6df
commit
98297ee781
148 changed files with 2533 additions and 3517 deletions
|
@ -76,9 +76,10 @@ extern time_t PyOS_GetLastModificationTime(char *, FILE *);
|
|||
3060 (PEP 3115 metaclass syntax)
|
||||
3070 (PEP 3109 raise changes)
|
||||
3080 (PEP 3137 make __file__ and __name__ unicode)
|
||||
3090 (kill str8 interning)
|
||||
.
|
||||
*/
|
||||
#define MAGIC (3080 | ((long)'\r'<<16) | ((long)'\n'<<24))
|
||||
#define MAGIC (3090 | ((long)'\r'<<16) | ((long)'\n'<<24))
|
||||
|
||||
/* Magic word as global; note that _PyImport_Init() can change the
|
||||
value of this global to accommodate for alterations of how the
|
||||
|
@ -2212,14 +2213,14 @@ ensure_fromlist(PyObject *mod, PyObject *fromlist, char *buf, Py_ssize_t buflen,
|
|||
PyUnicode_GetSize(item),
|
||||
NULL);
|
||||
} else {
|
||||
item8 = PyUnicode_AsEncodedString(item,
|
||||
Py_FileSystemDefaultEncoding, NULL);
|
||||
item8 = PyUnicode_AsEncodedString(item,
|
||||
Py_FileSystemDefaultEncoding, NULL);
|
||||
}
|
||||
if (!item8) {
|
||||
PyErr_SetString(PyExc_ValueError, "Cannot encode path item");
|
||||
return 0;
|
||||
}
|
||||
subname = PyBytes_AsString(item8);
|
||||
subname = PyString_AS_STRING(item8);
|
||||
if (buflen + strlen(subname) >= MAXPATHLEN) {
|
||||
PyErr_SetString(PyExc_ValueError,
|
||||
"Module name too long");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue