[Python-Dev] bogus LANG setting results in "import site failed"
message
M.-A. Lemburg
mal@lemburg.com
Fri, 07 Jul 2000 21:37:35 +0200
Fredrik Lundh wrote:
>
> [fredrik@brain src]$ export LANG=foobar
> [fredrik@brain src]$ ./python
> 'import site' failed; use -v for traceback
> Python 2.0b1 (#4, Jul 7 2000, 12:23:15) [GCC egcs-2.91.66 19990314/Linux
> (egcs-1.1.2 release)] on linux2
> Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam
> Copyright 1995-2000 Corporation for National Research Initiatives (CNRI)
> >>>
>
> that "import site" is a bit disturbing. maybe the locale-checking
> code should handle this case a bit more gracefully?
>
> (like, say, printing a more explicit warning message).
Here's the patch (Skip's locking the Lib dir ... grrr ;-):
--- CVS-Python/Lib/site.py Wed Jun 28 17:30:57 2000
+++ Python+Unicode/Lib/site.py Fri Jul 7 21:30:54 2000
@@ -124,11 +124,16 @@ del exit
# encoding used by the default locale of this system. If the default
# encoding cannot be determined or is unknown, it defaults to 'ascii'.
#
def locale_aware_defaultencoding():
import locale
- code, encoding = locale.get_default()
+ try:
+ code, encoding = locale.get_default()
+ except ValueError, why:
+ sys.stderr.write('Error setting default encoding (%s), using ASCII.\n'
+ % why)
+ encoding = None
if encoding is None:
encoding = 'ascii'
try:
sys.setdefaultencoding(encoding)
except LookupError:
--
Marc-Andre Lemburg
______________________________________________________________________
Business: http://www.lemburg.com/
Python Pages: http://www.lemburg.com/python/