From f96ffde2317c8731382a0c7770771e6c0936bb8c Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Wed, 09 Dec 2009 04:22:32 -0500
Subject: [PATCH] - Fix parsing conditional comments in HTML messages (#1486350)

---
 CHANGELOG                   |    1 +
 program/steps/mail/func.inc |    9 ++++++---
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG
index 17dd365..85134df 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,7 @@
 CHANGELOG RoundCube Webmail
 ===========================
 
+- Fix parsing conditional comments in HTML messages (#1486350)
 - Use built-in json_encode() for proper JSON format in AJAX replies
 - Allow setting only selected params in 'message_compose' hook (#1486312)
 - Plugin API: added 'message_compose_body' hook (#1486285)
diff --git a/program/steps/mail/func.inc b/program/steps/mail/func.inc
index 6b2ce09..94f455a 100644
--- a/program/steps/mail/func.inc
+++ b/program/steps/mail/func.inc
@@ -608,6 +608,7 @@
   return html::span($attrib, rcmail_get_mailbox_name_text());
 }
 
+
 function rcmail_get_mailbox_name_text()
 {
   global $RCMAIL;
@@ -630,7 +631,7 @@
     
   return $unseen;
 }
-			      
+
 
 /**
  * Sets message is_safe flag according to 'show_images' option value
@@ -659,6 +660,7 @@
     }
   }
 }
+
 
 /**
  * Cleans up the given message HTML Body (for displaying)
@@ -791,6 +793,7 @@
   return $data['type'] == 'html' ? $data['body'] : html::tag('pre', array(), $data['body']);
 }
 
+
 /**
  * Handle links and citation marks in plain text message
  *
@@ -902,8 +905,8 @@
   $tagname = $matches[2];
 
   $tagname = preg_replace(array(
-    '/:.*$/',		// Microsoft's Smart Tags <st1:xxxx>
-    '/[^a-z0-9_-]/i',	// forbidden characters
+    '/:.*$/',			// Microsoft's Smart Tags <st1:xxxx>
+    '/[^a-z0-9_\[\]\!-]/i',	// forbidden characters
     ), '', $tagname);
 
   return $matches[1].$tagname;

--
Gitblit v1.9.1