- bugfix when a doublequoted modifier parameter did contain Smarty tags and ':'

This commit is contained in:
uwe.tews@googlemail.com
2010-09-16 16:29:44 +00:00
parent 44c6732970
commit 66752cd790
2 changed files with 4 additions and 1 deletions

View File

@@ -1,3 +1,6 @@
16/09/2010
- bugfix when a doublequoted modifier parameter did contain Smarty tags and ':'
15/09/2010 15/09/2010
- bugfix resolving conflict between '<%'/'%>' as custom Smarty delimiter and ASP tags - bugfix resolving conflict between '<%'/'%>' as custom Smarty delimiter and ASP tags
- use ucfirst for resource name on internal resource class names - use ucfirst for resource name on internal resource class names

View File

@@ -30,7 +30,7 @@ class Smarty_Internal_Compile_Private_Modifier extends Smarty_Internal_CompileBa
$output = $_attr['value']; $output = $_attr['value'];
// loop over list of modifiers // loop over list of modifiers
foreach ($_attr['modifierlist'] as $single_modifier) { foreach ($_attr['modifierlist'] as $single_modifier) {
preg_match_all('/(((\'[^\'\\\\]*(?:\\\\.[^\'\\\\]*)*\'|"[^"\\\\]*(?:\\\\.[^"\\\\]*)*")[^:]*)+|::?|[^:]+)/', $single_modifier, $mod_array); preg_match_all('/(((\'[^\'\\\\]*(?:\\\\.[^\'\\\\]*)*\'|[^:"]*"[^"\\\\]*(?:\\\\.[^"\\\\]*)*")[^:]*)+|::?|[^:]+)/', $single_modifier, $mod_array);
$modifier = $mod_array[0][0]; $modifier = $mod_array[0][0];
for ($i = 0, $count = count($mod_array[0]);$i < $count;$i++) { for ($i = 0, $count = count($mod_array[0]);$i < $count;$i++) {
if ($mod_array[0][$i] == ':') { if ($mod_array[0][$i] == ':') {