diff options
Diffstat (limited to 'program/steps/mail/get.inc')
-rw-r--r-- | program/steps/mail/get.inc | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/program/steps/mail/get.inc b/program/steps/mail/get.inc index f05bbbd94..083de8664 100644 --- a/program/steps/mail/get.inc +++ b/program/steps/mail/get.inc @@ -87,17 +87,19 @@ else if ($pid = get_input_value('_part', RCUBE_INPUT_GET)) // deliver part content if ($ctype_primary=='text' && $ctype_secondary=='html') { - // get part body if not available - if (!$part->body) - $part->body = $IMAP->get_message_part($MESSAGE['UID'], $part->mime_id, $part); - - list($MESSAGE['parts']) = rcmail_parse_message($part, + // we have to analyze the whole structure again to find inline objects + list($MESSAGE['parts']) = rcmail_parse_message($MESSAGE['structure'], array('safe' => (bool)$_GET['_safe'], 'prefer_html' => TRUE, 'get_url' => $GET_URL.'&_part=%s')); + $part = &$MESSAGE['parts'][0]; + + // get part body if not available + if (!$part->body) + $part->body = $IMAP->get_message_part($MESSAGE['UID'], $part->mime_id, $part); $OUTPUT = new rcube_html_page(); - $OUTPUT->write(rcmail_print_body($MESSAGE['parts'][0], (bool)$_GET['_safe'])); + $OUTPUT->write(rcmail_print_body($part, (bool)$_GET['_safe'])); } else { |