From 9bea4be2efa74b963d3cd0bbaa4635deffc2f109 Mon Sep 17 00:00:00 2001 From: GDmac Date: Tue, 30 Oct 2012 06:14:19 +0100 Subject: Fix #1938 Where the email library removed multiple spaces inside a plain text message. Signed-off-by: GDmac --- system/libraries/Email.php | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'system/libraries/Email.php') diff --git a/system/libraries/Email.php b/system/libraries/Email.php index edca303ff..7280466a5 100644 --- a/system/libraries/Email.php +++ b/system/libraries/Email.php @@ -770,6 +770,9 @@ class CI_Email { $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 @@ class CI_Email { $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(); -- cgit v1.2.3-24-g4f1b