summaryrefslogtreecommitdiff
path: root/loader/lib/parser.py
diff options
context:
space:
mode:
authorMagnus Hagander2012-07-05 14:05:54 +0000
committerMagnus Hagander2012-07-05 14:05:54 +0000
commit2f0ae8375ce8b7d2552053872acd75f02545a15a (patch)
treeea0107bb6bfaad7e9345f49c90151dcb85463ca9 /loader/lib/parser.py
parent7557e864976f43f67d719cad0b351da17c9dad4a (diff)
Don't crash on non-multipart messages that appeaer to be multipart
Diffstat (limited to 'loader/lib/parser.py')
-rw-r--r--loader/lib/parser.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/loader/lib/parser.py b/loader/lib/parser.py
index 8d85591..a72fa0c 100644
--- a/loader/lib/parser.py
+++ b/loader/lib/parser.py
@@ -165,7 +165,11 @@ class ArchivesParser(object):
raise IgnorableException("Don't know how to read the body from %s" % self.msgid)
def recursive_first_plaintext(self, container, html_instead=False):
- for p in container.get_payload():
+ pl = container.get_payload()
+ if isinstance(pl, str):
+ # This was not a multipart, but it leaked... Give up!
+ return None
+ for p in pl:
if p.get_params() == None:
# MIME multipart/mixed, but no MIME type on the part
log.status("Found multipart/mixed in message '%s', but no MIME type on part. Trying text/plain." % self.msgid)