summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Pipping <sebastian@pipping.org>2010-01-04 00:52:17 +0100
committerSebastian Pipping <sebastian@pipping.org>2010-01-04 00:52:17 +0100
commit9c520cc5bfd77769ba989b11ce90372c8206b44b (patch)
tree655ac4bc7e196e4eb1f7c319efd9a5a475a74051
parenta4ce3e5d2076528950155069999873a92b87833e (diff)
downloadlayman-9c520cc5bfd77769ba989b11ce90372c8206b44b.tar.gz
layman-9c520cc5bfd77769ba989b11ce90372c8206b44b.tar.bz2
layman-9c520cc5bfd77769ba989b11ce90372c8206b44b.zip
Handle sys.stdout.encoding being None
-rw-r--r--layman/overlays/overlay.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/layman/overlays/overlay.py b/layman/overlays/overlay.py
index 99aadad..e1a248b 100644
--- a/layman/overlays/overlay.py
+++ b/layman/overlays/overlay.py
@@ -30,6 +30,7 @@ __version__ = "$Id: overlay.py 273 2006-12-30 15:54:50Z wrobel $"
import sys, types, re, os, os.path, shutil, subprocess
import codecs
+import locale
import xml.etree.ElementTree as ET # Python 2.5
from layman.utils import path, ensure_unicode
@@ -228,10 +229,11 @@ class Overlay:
return result
def _get_encoding(self):
- if hasattr(sys.stdout, 'encoding'):
+ if hasattr(sys.stdout, 'encoding') \
+ and sys.stdout.encoding != None:
return sys.stdout.encoding
else:
- return 'ascii'
+ return locale.getpreferredencoding()
def _encode(self, unicode_text):
return codecs.encode(unicode_text, self._get_encoding(), 'replace')