aboutsummaryrefslogtreecommitdiffstats
path: root/lib/mail_handler/backends/mail_backend.rb
diff options
context:
space:
mode:
authorLouise Crow <louise.crow@gmail.com>2014-12-03 09:22:41 +0000
committerLouise Crow <louise.crow@gmail.com>2014-12-03 09:22:41 +0000
commit7414ed478f212be2b48c95fafde15726b348b197 (patch)
tree1d89b90f604b837b097fb4274775c4f3b3a319d6 /lib/mail_handler/backends/mail_backend.rb
parent479c9cd4567e2042d00c347f25a411373a6b1df9 (diff)
parentd05082c1cf1ddec789e547b54943f6e7d5bdffc1 (diff)
Merge branch 'release/0.20'0.20.0.0
Conflicts: config/general.yml-example
Diffstat (limited to 'lib/mail_handler/backends/mail_backend.rb')
-rw-r--r--lib/mail_handler/backends/mail_backend.rb4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/mail_handler/backends/mail_backend.rb b/lib/mail_handler/backends/mail_backend.rb
index 190e79e97..ae3077a72 100644
--- a/lib/mail_handler/backends/mail_backend.rb
+++ b/lib/mail_handler/backends/mail_backend.rb
@@ -248,6 +248,9 @@ module MailHandler
# Choose the best part from alternatives
def choose_best_alternative(mail)
+ if mail.parts.any?(&:multipart?)
+ return mail.parts.detect(&:multipart?)
+ end
if mail.html_part
return mail.html_part
elsif mail.text_part
@@ -261,6 +264,7 @@ module MailHandler
# wherever there is an alternative, and then count the returned
# leaves and assign url_part values to them
def get_attachment_leaves(mail)
+ # TODO: Most of these methods are modifying in place! :(
expand_and_normalize_parts(mail, mail)
leaves = _get_attachment_leaves_recursive(mail, nil, mail)
mail.count_parts_count = 0