diff --git a/program/include/rcube_imap.inc b/program/include/rcube_imap.inc
index a11c74910..4e1719736 100644
--- a/program/include/rcube_imap.inc
+++ b/program/include/rcube_imap.inc
@@ -1010,9 +1010,9 @@ class rcube_imap
// get part size
if (!empty($part[6]) && $part[6]!='NIL')
$struct->size = intval($part[6]);
-
+
// read part disposition
- $di = count($part) - 3;
+ $di = count($part) - 2;
if (is_array($part[$di]))
{
$struct->disposition = strtolower($part[$di][0]);
diff --git a/program/steps/mail/func.inc b/program/steps/mail/func.inc
index bae14a299..58da0ca45 100644
--- a/program/steps/mail/func.inc
+++ b/program/steps/mail/func.inc
@@ -676,18 +676,18 @@ function rcmail_print_body($part, $safe=FALSE, $plain=FALSE)
if (!$safe) // remove remote images and scripts
{
- $remote_patterns = array('/(src|background)=(["\']?)([hftps]{3,5}:\/{2}[^"\'\s]+)(\2|\s|>)/Ui',
- // '/(src|background)=(["\']?)([\.\/]+[^"\'\s]+)(\2|\s|>)/Ui',
+ $remote_patterns = array('/
)/Ui',
+ '/(src|background)=(["\']?)([hftps]{3,5}:\/{2}[^"\'\s]+)(\2|\s|>)/Ui',
'/()/i',
'/()/i',
'/url\s*\(["\']?([hftps]{3,5}:\/{2}[^"\'\s]+)["\']?\)/i',
'/url\s*\(["\']?([\.\/]+[^"\'\s]+)["\']?\)/i',
'//Umis');
- $remote_replaces = array('', // '\\1=\\2#\\4',
- // '\\1=\\2#\\4',
+ $remote_replaces = array('
\n".$body."\n";
+ return "".$body."\n
";
}
}
@@ -947,7 +947,7 @@ function rcmail_parse_message(&$structure, $arg=array(), $recursive=FALSE)
$a_replaces = array();
foreach ($sa_inline_objects as $inline_object)
- $a_replaces['cid:'.$inline_object->content_id] = sprintf($get_url, $inline_object->mime_id);
+ $a_replaces['cid:'.$inline_object->content_id] = htmlspecialchars(sprintf($get_url, $inline_object->mime_id));
// add replace array to each content part
// (will be applied later when part body is available)
@@ -1092,8 +1092,8 @@ function rcmail_message_body($attrib)
foreach ($MESSAGE['attachments'] as $attach_prop)
{
if (strpos($attach_prop->mimetype, 'image/')===0)
- $out .= sprintf("\n
\n
\n",
- $GET_URL, $attach_prop->mime_id,
+ $out .= sprintf("\n
\n
\n",
+ htmlspecialchars($GET_URL), $attach_prop->mime_id,
$attach_prop->filename,
$attach_prop->filename);
}
@@ -1121,15 +1121,12 @@ function rcmail_mod_html_body($body, $container_id)
// find STYLE tags
while (($pos = strpos($body_lc, '