Fix #1938
Where the email library removed multiple spaces inside a plain text message.
Signed-off-by: GDmac <grdalenoort@gmail.com>
diff --git a/system/libraries/Email.php b/system/libraries/Email.php
index edca303..7280466 100644
--- a/system/libraries/Email.php
+++ b/system/libraries/Email.php
@@ -770,6 +770,9 @@
$body = str_replace(str_repeat("\n", $i), "\n\n", $body);
}
+ // Reduce multiple spaces
+ $str = preg_replace('| +|', ' ', $str);
+
return ($this->wordwrap)
? $this->word_wrap($body, 76)
: $body;
@@ -792,15 +795,15 @@
$charlim = empty($this->wrapchars) ? 76 : $this->wrapchars;
}
- // Reduce multiple spaces
- $str = preg_replace('| +|', ' ', $str);
-
// Standardize newlines
if (strpos($str, "\r") !== FALSE)
{
$str = str_replace(array("\r\n", "\r"), "\n", $str);
}
+ // Reduce multiple spaces at end of line
+ $str = preg_replace('| +\n|', "\n", $str);
+
// If the current word is surrounded by {unwrap} tags we'll
// strip the entire chunk and replace it with a marker.
$unwrap = array();