From: Michael M Slusarz Date: Mon, 31 Aug 2009 01:59:32 +0000 (-0600) Subject: Catch empty body parts X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=02533d181506f2935a0c5fe11991c11b8aa398ee;p=horde.git Catch empty body parts --- diff --git a/imp/view.php b/imp/view.php index bcb81392e..6ce5e7b42 100644 --- a/imp/view.php +++ b/imp/view.php @@ -39,6 +39,9 @@ function _sanitizeName($name) function _fullMessageTextLength($ob) { + if (!$ob[1]) { + return strlen($ob[0]); + } $stat = fseek($ob[1], 0, SEEK_END); $len = strlen($ob[0]) + ftell($ob[1]); rewind($ob[1]); @@ -169,7 +172,9 @@ case 'view_source': $msg = $contents->fullMessageText(array('stream' => true)); $browser->downloadHeaders('Message Source', 'text/plain', true, _fullMessageTextLength($msg)); echo $msg[0]; - fpassthru($msg[1]); + if ($msg[1]) { + fpassthru($msg[1]); + } exit; case 'save_message': @@ -191,6 +196,8 @@ case 'save_message': $msg = $contents->fullMessageText(array('stream' => true)); $browser->downloadHeaders($name . '.eml', 'message/rfc822', false, strlen($hdr) + _fullMessageTextLength($msg)); echo $hdr . $msg[0]; - fpassthru($msg[1]); + if ($msg[1]) { + fpassthru($msg[1]); + } exit; }