summaryrefslogtreecommitdiff
path: root/Lib/locale.py
diff options
context:
space:
mode:
authordoko <doko@ubuntu.com>2017-01-31 13:35:56 +0100
committerdoko <doko@ubuntu.com>2017-01-31 13:35:56 +0100
commitb23072b8814146d3a76eb752fd7526eb1575e7cc (patch)
treecf13a75e5570561a10bf68c2c451e9271229a3be /Lib/locale.py
parente0cb38ac4330d5e09b5e21c74c5d5e453af99a4f (diff)
parentccd19e48ec9d557231bf923c338be0e7509a51d3 (diff)
downloadcpython-b23072b8814146d3a76eb752fd7526eb1575e7cc.tar.gz
merge 3.6
Diffstat (limited to 'Lib/locale.py')
-rw-r--r--Lib/locale.py24
1 files changed, 15 insertions, 9 deletions
diff --git a/Lib/locale.py b/Lib/locale.py
index 4de0090ed9..f8d1d78c36 100644
--- a/Lib/locale.py
+++ b/Lib/locale.py
@@ -618,15 +618,21 @@ else:
try:
CODESET
except NameError:
- # Fall back to parsing environment variables :-(
- def getpreferredencoding(do_setlocale = True):
- """Return the charset that the user is likely using,
- by looking at environment variables."""
- res = getdefaultlocale()[1]
- if res is None:
- # LANG not set, default conservatively to ASCII
- res = 'ascii'
- return res
+ if hasattr(sys, 'getandroidapilevel'):
+ # On Android langinfo.h and CODESET are missing, and UTF-8 is
+ # always used in mbstowcs() and wcstombs().
+ def getpreferredencoding(do_setlocale = True):
+ return 'UTF-8'
+ else:
+ # Fall back to parsing environment variables :-(
+ def getpreferredencoding(do_setlocale = True):
+ """Return the charset that the user is likely using,
+ by looking at environment variables."""
+ res = getdefaultlocale()[1]
+ if res is None:
+ # LANG not set, default conservatively to ASCII
+ res = 'ascii'
+ return res
else:
def getpreferredencoding(do_setlocale = True):
"""Return the charset that the user is likely using,