mirror of
https://github.com/smarty-php/smarty.git
synced 2025-08-04 18:34:27 +02:00
Fixed a bug with parsing function arguments in {if} tags.
This commit is contained in:
24
NEWS
24
NEWS
@@ -1,12 +1,17 @@
|
|||||||
- numerous documentation updates (Monte)
|
- fixed a bug with parsing function arguments inside {if} tags if a comma
|
||||||
- added SMARTY_DIR constant (Monte)
|
was present. (Andrei)
|
||||||
- added popup_init and popup functions (Monte)
|
- updated debug console with config file vars. (Monte)
|
||||||
- updated debug console with config file vars (Monte)
|
- numerous documentation updates. (Monte)
|
||||||
- added debugging url control (Monte)
|
- added SMARTY_DIR constant which indicating location of Smarty files.
|
||||||
- added 'quotes' parameter to escape modifier (Monte, Mike Krus)
|
(Monte)
|
||||||
|
- added popup_init and popup functions. (Monte)
|
||||||
|
- updated debug console with config file vars. (Monte)
|
||||||
|
- added debugging url control. (Monte)
|
||||||
|
- added 'quotes' type to escape modifier. (Monte, Mike Krus)
|
||||||
- added 'total' and 'iteration' section properties. (Andrei)
|
- added 'total' and 'iteration' section properties. (Andrei)
|
||||||
- added 'start', 'max', and step section attributes/properties. (Andrei)
|
- added 'start', 'max', and 'step' section attributes/properties. (Andrei)
|
||||||
- fixed a bug with security checking of functions inside {if} tags. (Andrei)
|
- fixed a bug with security checking of functions inside {if} tags.
|
||||||
|
(Andrei)
|
||||||
- fixed a bug in Config_File that would incorrectly booleanize values that
|
- fixed a bug in Config_File that would incorrectly booleanize values that
|
||||||
weren't really booleans. (Andrei)
|
weren't really booleans. (Andrei)
|
||||||
|
|
||||||
@@ -21,7 +26,8 @@ Version 1.4.3
|
|||||||
class itself. (Andrei)
|
class itself. (Andrei)
|
||||||
- fixed a bug with passing quoted arguments to modifiers inside {if}
|
- fixed a bug with passing quoted arguments to modifiers inside {if}
|
||||||
statements. (Andrei, Sam Beckwith)
|
statements. (Andrei, Sam Beckwith)
|
||||||
- added security features for third party template editing, documented (Monte)
|
- added security features for third party template editing, documented
|
||||||
|
(Monte)
|
||||||
- added assign custom function, documented. (Monte)
|
- added assign custom function, documented. (Monte)
|
||||||
- fixed bug with template header using version instead of _version. (Monte)
|
- fixed bug with template header using version instead of _version. (Monte)
|
||||||
- fixed a problem with putting $ followed by numbers inside {strip} and
|
- fixed a problem with putting $ followed by numbers inside {strip} and
|
||||||
|
@@ -509,11 +509,12 @@ class Smarty_Compiler extends Smarty {
|
|||||||
preg_match_all('/(?:
|
preg_match_all('/(?:
|
||||||
"[^"\\\\]*(?:\\\\.[^"\\\\]*)*" | # match all double quoted strings allowed escaped double quotes
|
"[^"\\\\]*(?:\\\\.[^"\\\\]*)*" | # match all double quoted strings allowed escaped double quotes
|
||||||
\'[^\'\\\\]*(?:\\\\.[^\'\\\\]*)*\' | # match all single quoted strings allowed escaped single quotes
|
\'[^\'\\\\]*(?:\\\\.[^\'\\\\]*)*\' | # match all single quoted strings allowed escaped single quotes
|
||||||
[()] | # match parentheses
|
[(),] | # match parentheses and commas
|
||||||
[^\s()]+ # match any other token that is not any of the above
|
[^\s(),]+ # match any other token that is not any of the above
|
||||||
)/x', $tag_args, $match);
|
)/x', $tag_args, $match);
|
||||||
$tokens = $match[0];
|
$tokens = $match[0];
|
||||||
|
|
||||||
|
var_dump($tokens);
|
||||||
$this->_parse_vars_props($tokens);
|
$this->_parse_vars_props($tokens);
|
||||||
|
|
||||||
$is_arg_stack = array();
|
$is_arg_stack = array();
|
||||||
|
@@ -509,11 +509,12 @@ class Smarty_Compiler extends Smarty {
|
|||||||
preg_match_all('/(?:
|
preg_match_all('/(?:
|
||||||
"[^"\\\\]*(?:\\\\.[^"\\\\]*)*" | # match all double quoted strings allowed escaped double quotes
|
"[^"\\\\]*(?:\\\\.[^"\\\\]*)*" | # match all double quoted strings allowed escaped double quotes
|
||||||
\'[^\'\\\\]*(?:\\\\.[^\'\\\\]*)*\' | # match all single quoted strings allowed escaped single quotes
|
\'[^\'\\\\]*(?:\\\\.[^\'\\\\]*)*\' | # match all single quoted strings allowed escaped single quotes
|
||||||
[()] | # match parentheses
|
[(),] | # match parentheses and commas
|
||||||
[^\s()]+ # match any other token that is not any of the above
|
[^\s(),]+ # match any other token that is not any of the above
|
||||||
)/x', $tag_args, $match);
|
)/x', $tag_args, $match);
|
||||||
$tokens = $match[0];
|
$tokens = $match[0];
|
||||||
|
|
||||||
|
var_dump($tokens);
|
||||||
$this->_parse_vars_props($tokens);
|
$this->_parse_vars_props($tokens);
|
||||||
|
|
||||||
$is_arg_stack = array();
|
$is_arg_stack = array();
|
||||||
|
Reference in New Issue
Block a user