diff options
author | Victor Stinner <victor.stinner@haypocalc.com> | 2010-10-13 23:24:06 +0000 |
---|---|---|
committer | Victor Stinner <victor.stinner@haypocalc.com> | 2010-10-13 23:24:06 +0000 |
commit | 052a04d34a3841996af59962b038f05af63abacc (patch) | |
tree | 763e4056730872f8b5c19f8e847c36c2c4a1c303 | |
parent | 59a289d16b6716f3f106ee14c5562186cda310b2 (diff) | |
download | cpython-git-052a04d34a3841996af59962b038f05af63abacc.tar.gz |
Revert r85435 (and r85440): decode command line arguments from utf-8
Python exits with a fatal error if the command line contains an undecodable
argument. PyUnicode_FromString() fails at the first undecodable byte because it
calls the error handler, but error handlers are not ready before Python
initialization.
-rw-r--r-- | Misc/NEWS | 3 | ||||
-rw-r--r-- | Modules/python.c | 11 |
2 files changed, 1 insertions, 13 deletions
@@ -10,9 +10,6 @@ What's New in Python 3.2 Beta 1? Core and Builtins ----------------- -- Issue #9992: On Mac OS X, decode command line arguments from utf-8 instead of - the locale encoding. - - Issue #9992: Remove PYTHONFSENCODING environment variable. Library diff --git a/Modules/python.c b/Modules/python.c index 488aa791d7..9a71cd06da 100644 --- a/Modules/python.c +++ b/Modules/python.c @@ -41,19 +41,10 @@ main(int argc, char **argv) oldloc = strdup(setlocale(LC_ALL, NULL)); setlocale(LC_ALL, ""); for (i = 0; i < argc; i++) { -#ifdef __APPLE__ - /* Use utf-8 on Mac OS X */ - PyObject *unicode = PyUnicode_FromString(argv[i]); - if (!unicode) - return 1; - argv_copy[i] = PyUnicode_AsWideCharString(unicode, NULL); - Py_DECREF(unicode); -#else argv_copy[i] = _Py_char2wchar(argv[i]); -#endif - argv_copy2[i] = argv_copy[i]; if (!argv_copy[i]) return 1; + argv_copy2[i] = argv_copy[i]; } setlocale(LC_ALL, oldloc); free(oldloc); |