diff --git a/frappe/email/receive.py b/frappe/email/receive.py index e5c49b467c..d64eecdf9a 100644 --- a/frappe/email/receive.py +++ b/frappe/email/receive.py @@ -198,18 +198,18 @@ class EmailServer: uidnext=uidnext, email_account=self.settings.email_account) ) - + # uid validity not found pulling emails for first time if not uid_validity: self.settings.email_sync_rule = "UNSEEN" return - + sync_count = 100 if uid_validity else int(self.settings.initial_sync_count) from_uid = 1 if uidnext < (sync_count + 1) or (uidnext - sync_count) < 1 else uidnext - sync_count # sync last 100 email self.settings.email_sync_rule = "UID {}:{}".format(from_uid, uidnext) self.uid_reindexed = True - + elif uid_validity == current_uid_validity: return @@ -407,9 +407,9 @@ class Email: self.from_real_name = email.utils.parseaddr(_from_email)[0] if "@" in _from_email else _from_email def decode_email(self, email): - if not email: return + if not email: return decoded = "" - for part, encoding in decode_header(email.replace("\""," ").replace("\'"," ")): + for part, encoding in decode_header(frappe.as_unicode(email).replace("\""," ").replace("\'"," ")): if encoding: decoded += part.decode(encoding) else: diff --git a/frappe/translate.py b/frappe/translate.py index 1cba2c503a..59b95f46a5 100644 --- a/frappe/translate.py +++ b/frappe/translate.py @@ -235,7 +235,7 @@ def get_translation_dict_from_file(path, lang, app): elif len(item)==2: cleaned[item[0]] = strip(item[1]) - else: + elif item: raise Exception("Bad translation in '{app}' for language '{lang}': {values}".format( app=app, lang=lang, values=repr(item).encode("utf-8") ))