Mercurial > kallithea
changeset 4899:9ee018948dcd
helpers: fix gravatar handling with (invalid) non-ascii email addresses
It would crash with UnicodeDecodeError when trying to expand unicode email into
utf8 template.
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Wed, 11 Mar 2015 00:24:25 +0100 |
parents | d4b1b40b41ac |
children | 9ecd1d4836cc |
files | kallithea/lib/helpers.py |
diffstat | 1 files changed, 1 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/kallithea/lib/helpers.py Wed Mar 11 00:24:25 2015 +0100 +++ b/kallithea/lib/helpers.py Wed Mar 11 00:24:25 2015 +0100 @@ -893,9 +893,6 @@ _gravatar_url = c.visual.gravatar_url or User.DEFAULT_GRAVATAR_URL email_address = email_address or _def - if isinstance(email_address, unicode): - #hashlib crashes on unicode items - email_address = safe_str(email_address) if not _use_gravatar or not email_address or email_address == _def: return "" @@ -906,7 +903,7 @@ tmpl = _gravatar_url parsed_url = urlparse.urlparse(url.current(qualified=True)) tmpl = tmpl.replace('{email}', email_address)\ - .replace('{md5email}', _md5(email_address.lower())) \ + .replace('{md5email}', _md5(safe_str(email_address).lower())) \ .replace('{netloc}', parsed_url.netloc)\ .replace('{scheme}', parsed_url.scheme)\ .replace('{size}', safe_str(size))