From 85505a2a7397637aacfb9150f1b17d1a57618a7c Mon Sep 17 00:00:00 2001 From: Michael M Slusarz Date: Mon, 12 Oct 2009 18:45:50 -0600 Subject: [PATCH] Bug #4299: Fix dimming signatures when mixed with quoted text --- .../Text_Filter/lib/Horde/Text/Filter/Dimsignature.php | 14 ++++++++------ framework/Text_Filter/package.xml | 3 ++- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/framework/Text_Filter/lib/Horde/Text/Filter/Dimsignature.php b/framework/Text_Filter/lib/Horde/Text/Filter/Dimsignature.php index 07ee6c3e7..5833e9b76 100644 --- a/framework/Text_Filter/lib/Horde/Text/Filter/Dimsignature.php +++ b/framework/Text_Filter/lib/Horde/Text/Filter/Dimsignature.php @@ -22,12 +22,14 @@ class Horde_Text_Filter_Dimsignature extends Horde_Text_Filter */ public function postProcess($text) { - $parts = preg_split('|(\n--\s*(?:
)?\r?\n)|', $text, -1, PREG_SPLIT_DELIM_CAPTURE); - $num_parts = count($parts); - if ($num_parts > 2) { - return implode('', array_slice($parts, 0, -2)) - . '' . $parts[$num_parts - 2] - . $parts[$num_parts - 1] . ''; + $parts = preg_split('/(\n--\s*(?:
)?\r?\n.*?)(?=<\/?(?:div|span)|$\s)/is', $text, -1, PREG_SPLIT_DELIM_CAPTURE); + $text = ''; + + while (count($parts)) { + $text .= array_shift($parts); + if (count($parts)) { + $text .= '' . array_shift($parts) . ''; + } } return $text; diff --git a/framework/Text_Filter/package.xml b/framework/Text_Filter/package.xml index 647f2f079..08d66dc6e 100644 --- a/framework/Text_Filter/package.xml +++ b/framework/Text_Filter/package.xml @@ -37,7 +37,8 @@ http://pear.php.net/dtd/package-2.0.xsd"> beta LGPL - * Added javscript minify filter. + * Fix dimming signatures when mixed with quoted text (Bug #4299). + * Added javscript minify filter. * Add support for using the tidy extension when filtering HTML data. * Initial Horde 4 package. -- 2.11.0