diff --git a/libs/sysplugins/smarty_internal_compile_private_modifier.php b/libs/sysplugins/smarty_internal_compile_private_modifier.php index 04600c84..add824dc 100644 --- a/libs/sysplugins/smarty_internal_compile_private_modifier.php +++ b/libs/sysplugins/smarty_internal_compile_private_modifier.php @@ -31,13 +31,13 @@ class Smarty_Internal_Compile_Private_Modifier extends Smarty_Internal_CompileBa foreach ($_attr['modifierlist'] as $single_modifier) { preg_match_all('/(\'[^\'\\\\]*(?:\\\\.[^\'\\\\]*)*\'|"[^"\\\\]*(?:\\\\.[^"\\\\]*)*"|:|[^:]+)/', $single_modifier, $mod_array); $modifier = $mod_array[0][0]; - $i = 1; - while (isset($mod_array[0][$i])) { - unset($mod_array[0][$i]); - $i = $i + 2; + for ($i = 0, $count = count($mod_array[0]);$i < $count;$i++) { + if ($mod_array[0][$i] == ':') { + $mod_array[0][$i] = ','; + } } $mod_array[0][0] = $output; - $params = implode(",", $mod_array[0]); + $params = implode('', $mod_array[0]); // check for registered modifier if (isset($compiler->smarty->registered_plugins['modifier'][$modifier])) { $function = $compiler->smarty->registered_plugins['modifier'][$modifier][0];