Index: trunk/CHANGELOG
===================================================================
--- trunk/CHANGELOG	(revision 684)
+++ trunk/CHANGELOG	(revision 685)
@@ -12,6 +12,7 @@
 
 ------------------------------------- 2.7.0 -------------------------------------
 09-Feb-2008 Christian Sommer
+#	output_filter: fixed bug in regular expression (eats up characters in mailto links)
 #	output_filter: removed word boundary from mailto regex part
 #	fixed bug in menu_link module (IE 7 did not show the select boxes at all)
 #	fixed bug in user signup
Index: trunk/wb/modules/output_filter/filter-routines.php
===================================================================
--- trunk/wb/modules/output_filter/filter-routines.php	(revision 684)
+++ trunk/wb/modules/output_filter/filter-routines.php	(revision 685)
@@ -89,11 +89,11 @@
 		define('OUTPUT_FILTER_DOT_REPLACEMENT', $filter_settings['dot_replacement']);
 		
 		// first search part to find all mailto email addresses
-		$pattern = '#(<a.*?href\s*?=\s*?"\s*?mailto\s*?:\s*?)([A-Z0-9._%+-]+@(?:[A-Z0-9-]+\.)+[A-Z]{2,4})([^"]*?)"([^>]*>)(.*?)</a>';
+		$pattern = '#(<a[^<]*href\s*?=\s*?"\s*?mailto\s*?:\s*?)([A-Z0-9._%+-]+@(?:[A-Z0-9-]+\.)+[A-Z]{2,4})([^"]*?)"([^>]*>)(.*?)</a>';
 		// second part to find all non mailto email addresses
 		$pattern .= '|\b([A-Z0-9._%+-]+@(?:[A-Z0-9-]+\.)+[A-Z]{2,4})\b#i';
 		/*
-		Sub 1:\b(<a.*?href\s*?=\s*?"\s*?mailto\s*?:\s*?)				-->	"<a id="yyy" class="xxx" href = " mailto :" ignoring white spaces
+		Sub 1:\b(<a.[^<]*href\s*?=\s*?"\s*?mailto\s*?:\s*?)			-->	"<a id="yyy" class="xxx" href = " mailto :" ignoring white spaces
 		Sub 2:([A-Z0-9._%+-]+@(?:[A-Z0-9-]+\.)+[A-Z]{2,4})			-->	the email address in the mailto: part of the mail link
 		Sub 3:([^"]*?)"																					--> possible ?Subject&cc... stuff attached to the mail address
 		Sub 4:([^>]*>)																					--> all class or id statements after the mailto but before closing ..>
