diff options
-rw-r--r-- | mail/changes/bug_dont_fail_on_emtpy_mail | 2 | ||||
-rw-r--r-- | mail/src/leap/mail/imap/fetch.py | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/mail/changes/bug_dont_fail_on_emtpy_mail b/mail/changes/bug_dont_fail_on_emtpy_mail new file mode 100644 index 00000000..0fc4ffc8 --- /dev/null +++ b/mail/changes/bug_dont_fail_on_emtpy_mail @@ -0,0 +1,2 @@ + o Do not fail while processing an empty mail, just skip it. Fixes + #3457.
\ No newline at end of file diff --git a/mail/src/leap/mail/imap/fetch.py b/mail/src/leap/mail/imap/fetch.py index 9b76592f..4a939fd3 100644 --- a/mail/src/leap/mail/imap/fetch.py +++ b/mail/src/leap/mail/imap/fetch.py @@ -125,14 +125,15 @@ class LeapIncomingMail(object): # XXX should check for _enc_scheme == "pubkey" || "none" # that is what incoming mail uses. encdata = doc.content[self.ENC_JSON_KEY] - d = defer.Deferred(self._decrypt_msg(doc, encdata)) - d.addCallbacks(self._process_decrypted, log.msg) + defer.Deferred(self._decrypt_msg(doc, encdata)) else: logger.debug('This does not look like a proper msg.') def _decrypt_msg(self, doc, encdata): log.msg('decrypting msg') key = self._pkey + if len(encdata) == 0: + return decrdata = (self._keymanager.decrypt( encdata, key, # XXX get from public method instead |