STINNER Victor <victor.stin...@haypocalc.com> added the comment: > I think that Python used interp->codecs_initialized flag
Yes in PyUnicode_AsEncodedString(), in Python 3.0 and 3.1. Python 3.2 has also the test, but PyUnicode_AsEncodedString() is no more used to encode filenames. I removed the test in Python 3.3. Extract of Python 3.1: /* During bootstrap, we may need to find the encodings package, to load the file system encoding, and require the file system encoding in order to load the encodings package. Break out of this dependency by assuming that the path to the encodings module is ASCII-only. XXX could try wcstombs instead, if the file system encoding is the locale's encoding. */ else if (Py_FileSystemDefaultEncoding && strcmp(encoding, Py_FileSystemDefaultEncoding) == 0 && !PyThreadState_GET()->interp->codecs_initialized) return PyUnicode_AsASCIIString(unicode); I implemented the "XXX could try wcstombs" part, but in new functions: PyUnicode_EncodeFSDefault and PyUnicode_DecodeFSDefaultAndSize. ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue10914> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com