Correction for issue #2388. Updated _build_message() to return a boolean. This prevents email from sending if there is an error trying to attach an attachment to the email.
diff --git a/system/libraries/Email.php b/system/libraries/Email.php
index a745d33..886d7bd 100644
--- a/system/libraries/Email.php
+++ b/system/libraries/Email.php
@@ -1236,7 +1236,7 @@
/**
* Build Final Body and attachments
*
- * @return void
+ * @return boolean
*/
protected function _build_message()
{
@@ -1401,7 +1401,7 @@
$body .= implode($this->newline, $attachment).$this->newline.'--'.$this->_atc_boundary.'--';
$this->_finalbody = ($this->_get_protocol() === 'mail') ? $body : $hdr.$body;
- return;
+ return TRUE;
}
// --------------------------------------------------------------------
@@ -1606,7 +1606,10 @@
return $result;
}
- $this->_build_message();
+ if ($this->_build_message() === FALSE)
+ {
+ return FALSE;
+ }
$result = $this->_spool_email();
if ($result && $auto_clear)
@@ -1665,7 +1668,10 @@
$this->_bcc_array = $bcc;
}
- $this->_build_message();
+ if ($this->_build_message() === FALSE)
+ {
+ return FALSE;
+ }
$this->_spool_email();
}
}