diff options
author | Victor Stinner <victor.stinner@haypocalc.com> | 2010-04-30 16:48:45 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@haypocalc.com> | 2010-04-30 16:48:45 (GMT) |
commit | 0964ee1cf5ddbb1cbf367a1a1a69508983a14b04 (patch) | |
tree | 86b3bbc13c00c23657b18b0114695802d3c7ce72 | |
parent | b9a20ad036ea0e4b8dd2f57158375d5138dd0663 (diff) | |
download | cpython-0964ee1cf5ddbb1cbf367a1a1a69508983a14b04.zip cpython-0964ee1cf5ddbb1cbf367a1a1a69508983a14b04.tar.gz cpython-0964ee1cf5ddbb1cbf367a1a1a69508983a14b04.tar.bz2 |
PyFile_FromFd() uses PyUnicode_DecodeFSDefault() instead of
PyUnicode_FromString() to support surrogates in the filename and use the right
encoding
-rw-r--r-- | Misc/NEWS | 4 | ||||
-rw-r--r-- | Objects/fileobject.c | 2 |
2 files changed, 5 insertions, 1 deletions
@@ -12,6 +12,10 @@ What's New in Python 3.2 Alpha 1? Core and Builtins ----------------- +- PyFile_FromFd() uses PyUnicode_DecodeFSDefault() instead of + PyUnicode_FromString() to support surrogates in the filename and use the + right encoding + - PyUnicode_DecodeFSDefaultAndSize() uses surrogateescape error handler - Issue #8419: Prevent the dict constructor from accepting non-string keyword diff --git a/Objects/fileobject.c b/Objects/fileobject.c index 85e87d7..bbed57b 100644 --- a/Objects/fileobject.c +++ b/Objects/fileobject.c @@ -41,7 +41,7 @@ PyFile_FromFd(int fd, char *name, char *mode, int buffering, char *encoding, if (stream == NULL) return NULL; if (name != NULL) { - nameobj = PyUnicode_FromString(name); + nameobj = PyUnicode_DecodeFSDefault(name); if (nameobj == NULL) PyErr_Clear(); else { |