From ae1e4707defe1212fb16cd87a3f610a778f10350 Mon Sep 17 00:00:00 2001 From: Klaus Leithoff Date: Thu, 2 Oct 2014 08:25:34 +0000 Subject: [PATCH] avoid fatal error on getContents when no part is found --- emailadmin/inc/class.emailadmin_imapbase.inc.php | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/emailadmin/inc/class.emailadmin_imapbase.inc.php b/emailadmin/inc/class.emailadmin_imapbase.inc.php index 63029c739a..b4d08c534e 100644 --- a/emailadmin/inc/class.emailadmin_imapbase.inc.php +++ b/emailadmin/inc/class.emailadmin_imapbase.inc.php @@ -5025,11 +5025,16 @@ class emailadmin_imapbase } $ext = mime_magic::mime2ext($structure_mime); if ($ext && stripos($filename,'.')===false && stripos($filename,$ext)===false) $filename = trim($filename).'.'.$ext; - //error_log(__METHOD__.__LINE__.'#'.$structure_mime.'#'.$filename); + if (!$part) + { + error_log(__METHOD__.__LINE__.'Error: Could not fetch attachment for:'." Uid:$_uid, PartId:$_partID, WinMailNr:$_winmail_nr in $_folder:".array2string(function_backtrace())); + error_log(__METHOD__.__LINE__.'# Fetched StructureMime:'.$structure_mime.' with Filename:'.$filename); + } $attachmentData = array( 'type' => $structure_mime, 'filename' => $filename, - 'attachment' => $part->getContents(array('stream'=>$_stream)) + //'attachment' => $part->getContents(array('stream'=>$_stream)) + 'attachment' => ($part?$part->getContents(array('stream'=>$_stream)):'Error: Could not fetch attachment for:'." Uid:$_uid, PartId:$_partID, WinMailNr:$_winmail_nr in $_folder:".array2string(function_backtrace())) ); // try guessing the mimetype, if we get the application/octet-stream