diff options
author | Germán M. Bravo <german.mb@gmail.com> | 2013-08-08 11:25:41 -0500 |
---|---|---|
committer | Ask Solem <ask@celeryproject.org> | 2013-08-14 13:10:26 +0100 |
commit | 53dbfde62e84ec3eff15bc0d3ef90af1a493e02e (patch) | |
tree | 24e76e4b802680b77a5c3d79dc941ccea165d54f | |
parent | 159a634032762a3abc83a7ef982ecced70bd8d56 (diff) | |
download | kombu-53dbfde62e84ec3eff15bc0d3ef90af1a493e02e.tar.gz |
Return unicode from _safe_str in Python 2.x
Under *Python 2.x*, `_safe_str()` should return `unicode`, otherwise `logger.error(u"The quiæk fåx jømps øver the lazy dåg")` fails in celery's `ColorFormatter`. This is because celery's `ColorFormatter.format()` expects unicode or ascii from `_safe_str()`, not `utf-8`, otherwise `str_t(...)` (`unicode(...)`) fails.
-rw-r--r-- | kombu/utils/encoding.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kombu/utils/encoding.py b/kombu/utils/encoding.py index efeeb329..cb84524c 100644 --- a/kombu/utils/encoding.py +++ b/kombu/utils/encoding.py @@ -94,7 +94,7 @@ def _safe_str(s, errors='replace'): encoding = default_encoding() try: if isinstance(s, unicode): - return s.encode(encoding, errors) + return s return unicode(s, encoding, errors) except Exception, exc: return '<Unrepresentable %r: %r %r>' % ( |