From 05a580a11775f0cf157f29cb7f26ae18ed60cb08 Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Mon, 22 Oct 2012 02:31:54 -0400
Subject: [PATCH] Fix HTML part detection in messages with attachments (#1488769)

---
 CHANGELOG                         |    1 +
 program/include/rcube_message.php |   13 ++++++++++++-
 2 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG
index 1c41d26..6705a92 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,7 @@
 CHANGELOG Roundcube Webmail
 ===========================
 
+- Fix HTML part detection in messages with attachments (#1488769)
 - Fix bug where wrong words were highlighted on spell-before-send check
 - Fix handling of URLs with asterisk characters (#1488759)
 - Remove automatic to-lowercase conversion of usernames (#1488715)
diff --git a/program/include/rcube_message.php b/program/include/rcube_message.php
index 4e1b5a0..d15cc75 100644
--- a/program/include/rcube_message.php
+++ b/program/include/rcube_message.php
@@ -218,7 +218,18 @@
                     // HTML part can be on the lower level, if not...
                     if (count($level) > 1) {
                         // It can be an alternative or related message part
-                        $parent = $this->mime_parts[0];
+                        // find parent part
+                        $parent = null;
+                        foreach ($this->mime_parts as $part) {
+                            if ($part->mime_id == $level[0]) {
+                                $parent = $part;
+                            }
+                        }
+
+                        if (!$parent) {
+                            continue;
+                        }
+
                         if ($parent->mimetype != 'multipart/alternative' && $parent->mimetype != 'multipart/related') {
                             continue;
                         }

--
Gitblit v1.9.1