summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKali Kaneko <kali@leap.se>2013-08-16 20:39:58 +0200
committerKali Kaneko <kali@leap.se>2013-08-16 20:39:58 +0200
commit75141e7504498b8092d1e860c8cd8879cc539fbb (patch)
tree9c468f3e69bb31609688e4112aca72e6eb0a53bb
parent518b79bd19fc00b6509b6cb7868a385497deb494 (diff)
parent34541d50c26a894489d594f5314781ea4ff8bbf2 (diff)
Merge remote-tracking branch 'chiiph/bug/dont_fail_on_empty_mail' into develop
-rw-r--r--changes/bug_dont_fail_on_emtpy_mail2
-rw-r--r--src/leap/mail/imap/fetch.py5
2 files changed, 5 insertions, 2 deletions
diff --git a/changes/bug_dont_fail_on_emtpy_mail b/changes/bug_dont_fail_on_emtpy_mail
new file mode 100644
index 0000000..0fc4ffc
--- /dev/null
+++ b/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/src/leap/mail/imap/fetch.py b/src/leap/mail/imap/fetch.py
index 9b76592..4a939fd 100644
--- a/src/leap/mail/imap/fetch.py
+++ b/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