diff --git a/NEWS b/NEWS
index 6bef0901..f3c9f380 100644
--- a/NEWS
+++ b/NEWS
@@ -1,9 +1,14 @@
-- fix function injection security hole closed (U.Tews)
-- fix pass expiration time at cache_handler_fuc call in core.write_cache_file.php
- (U.Tews)
-- Update of compiler.class.php to allow method chaining for PHP4 and PHP5
- (U.Tews)
+- back out method chaining, bug in some versions of PCRE causes errors (mohrt)
+Version 2.6.21 (Dec 2nd, 2008)
+------------------------------
+
+- fix function injection security hole closed (U.Tews)
+- fix pass expiration time at cache_handler_fuc call in core.write_cache_file.php (U.Tews)
+- Update of compiler.class.php to allow method chaining for PHP4 and PHP5 (U.Tews)
+
+Version 2.6.20 (Feb 15th, 2008)
+-------------------------------
- fix cache tag bug when multiple cache tags on a page (mankyd,
mohrt)
diff --git a/docs/en/designers/language-modifiers/language-modifier-escape.xml b/docs/en/designers/language-modifiers/language-modifier-escape.xml
index 0951b382..03006d4d 100644
--- a/docs/en/designers/language-modifiers/language-modifier-escape.xml
+++ b/docs/en/designers/language-modifiers/language-modifier-escape.xml
@@ -90,7 +90,8 @@ $smarty->assign('EmailAddress','smarty@example.com');
'Stiff Opposition Expected to Casketless Funeral Plan'
click here
-click here
+click here
{$articleTitle|escape:'quotes'}
\'Stiff Opposition Expected to Casketless Funeral Plan\'
diff --git a/libs/Smarty_Compiler.class.php b/libs/Smarty_Compiler.class.php
index 29099779..ad4ed0e6 100644
--- a/libs/Smarty_Compiler.class.php
+++ b/libs/Smarty_Compiler.class.php
@@ -170,7 +170,7 @@ class Smarty_Compiler extends Smarty {
$this->_obj_params_regexp = '\((?:' . $this->_obj_single_param_regexp
. '(?:\s*,\s*' . $this->_obj_single_param_regexp . ')*)?\)';
$this->_obj_start_regexp = '(?:' . $this->_dvar_regexp . '(?:' . $this->_obj_ext_regexp . ')+)';
- $this->_obj_call_regexp = '(?:' . $this->_obj_start_regexp . '(?:' . $this->_obj_params_regexp . '(?:' . $this->_obj_ext_regexp . '(?:'.$this->_obj_params_regexp . ')?)*' . ')?(?:' . $this->_dvar_math_regexp . '(?:' . $this->_num_const_regexp . '|' . $this->_dvar_math_var_regexp . ')*)?)';
+ $this->_obj_call_regexp = '(?:' . $this->_obj_start_regexp . '(?:' . $this->_obj_params_regexp . ')?(?:' . $this->_dvar_math_regexp . '(?:' . $this->_num_const_regexp . '|' . $this->_dvar_math_var_regexp . ')*)?)';
// matches valid modifier syntax:
// |foo