#evaluate breaks macro processing
---------------------------------
Key: VELOCITY-682
URL: https://issues.apache.org/jira/browse/VELOCITY-682
Project: Velocity
Issue Type: Bug
Components: Engine
Affects Versions: 1.6.1
Reporter: Sergiu Dumitriu
When using #evaluate, all further macro processing is broken; old macros are
not recognized anymore, and new macros cannot be defined.
For example:
{noformat}
#macro(aSimpleMacro)
This is a simple macro
#end
## called 3 times to show that it works each time
#aSimpleMacro()
#aSimpleMacro()
#aSimpleMacro()
#macro(doEval $b)
#evaluate($x)
#end
#set($x = 'value of x')
#doEval('$x')
## after the first call, which used an #evaluate, these two won't work anymore:
#doEval('$x')
#doEval('$x')
#macro(anotherSimpleMacro)
This is another simple macro
#end
## This newly defined macro doesn't work, either...
#anotherSimpleMacro()
## And the first macro, which worked well before, suddenly stops working
#aSimpleMacro()
{/noformat}
should print:
{noformat}
This is a simple macro
This is a simple macro
This is a simple macro
value of x
value of x
value of x
This is another simple macro
This is a simple macro
{/noformat}
but instead prints:
{noformat}
This is a simple macro
This is a simple macro
This is a simple macro
value of x
#doEval('$x')
#doEval('$x')
#anotherSimpleMacro()
#aSimpleMacro()
{/noformat}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]