diff Modules/python.c @ 80703:26c4748351cb 3.3

(Merge 3.2) Issue #16416: On Mac OS X, operating system data are now always encoded/decoded to/from UTF-8/surrogateescape, instead of the locale encoding (which may be ASCII if no locale environment variable is set), to avoid inconsistencies with os.fsencode() and os.fsdecode() functions which are already using UTF-8/surrogateescape.
author Victor Stinner <victor.stinner@gmail.com>
date Mon, 03 Dec 2012 12:48:53 +0100
parents f77998006917 c838c9b117f1
children c02656962b9c 3b344eac6b0f
line wrap: on
line diff
--- a/Modules/python.c	Sun Dec 02 13:04:37 2012 -0500
+++ b/Modules/python.c	Mon Dec 03 12:48:53 2012 +0100
@@ -15,10 +15,6 @@
 }
 #else
 
-#ifdef __APPLE__
-extern wchar_t* _Py_DecodeUTF8_surrogateescape(const char *s, Py_ssize_t size);
-#endif
-
 int
 main(int argc, char **argv)
 {
@@ -45,11 +41,7 @@
     oldloc = strdup(setlocale(LC_ALL, NULL));
     setlocale(LC_ALL, "");
     for (i = 0; i < argc; i++) {
-#ifdef __APPLE__
-        argv_copy[i] = _Py_DecodeUTF8_surrogateescape(argv[i], strlen(argv[i]));
-#else
         argv_copy[i] = _Py_char2wchar(argv[i], NULL);
-#endif
         if (!argv_copy[i]) {
             free(oldloc);
             fprintf(stderr, "Fatal Python error: "