diff options
author | Ivan Alejandro <ivanalejandro0@gmail.com> | 2013-11-11 16:24:28 -0300 |
---|---|---|
committer | Ivan Alejandro <ivanalejandro0@gmail.com> | 2013-11-11 16:34:18 -0300 |
commit | 0f10209dafb330320df387e66a1cc9083a9ae755 (patch) | |
tree | 32e363c40f22f1c0a20bc31caf003430ed7bbfdc | |
parent | 9dfd2d68dbe02b222e4bb63f05c3d12d735154e4 (diff) |
Use 'utf-8' as default/fallback encoding.
- Also reorder stdlib imports alphabetically :)
-rw-r--r-- | keymanager/changes/bug-4427_default-encoding-to-utf8 | 2 | ||||
-rw-r--r-- | keymanager/src/leap/keymanager/openpgp.py | 8 |
2 files changed, 9 insertions, 1 deletions
diff --git a/keymanager/changes/bug-4427_default-encoding-to-utf8 b/keymanager/changes/bug-4427_default-encoding-to-utf8 new file mode 100644 index 00000000..3f7d6713 --- /dev/null +++ b/keymanager/changes/bug-4427_default-encoding-to-utf8 @@ -0,0 +1,2 @@ + o Default encoding to 'utf-8' in case of system encodings not set. Closes + #4427. diff --git a/keymanager/src/leap/keymanager/openpgp.py b/keymanager/src/leap/keymanager/openpgp.py index a4dc1b8b..1670e1c9 100644 --- a/keymanager/src/leap/keymanager/openpgp.py +++ b/keymanager/src/leap/keymanager/openpgp.py @@ -21,12 +21,14 @@ Infrastructure for using OpenPGP keys in Key Manager. """ +import locale import logging import os import re import shutil +import sys import tempfile -import locale + from contextlib import closing from gnupg import GPG @@ -516,6 +518,10 @@ class OpenPGPScheme(EncryptionScheme): # https://github.com/isislovecruft/python-gnupg/\ # blob/master/gnupg/_meta.py#L121 encoding = locale.getpreferredencoding() + if encoding is None: + encoding = sys.stdin.encoding + if encoding is None: + encoding = 'utf-8' return result.data.decode(encoding, 'replace') def is_encrypted(self, data): |