Vincent Massol wrote: > On Oct 3, 2008, at 12:18 PM, Sergiu Dumitriu wrote: > >> Pascal Voitot wrote: >>> OK, >>> I don't have solved everything but I have found the origin of the >>> stackoverflow... >>> I coded a Recursive VelocityMacro and apparently variables inside >>> VM macro >>> are not local and it makes my recursion infinite!!! >>> Apparently, there is an option in velocity to make local macro >>> variables >>> have only a local scope. Do you see any problem about this? >> Yes, I had my share of pain with the fact that variables defined >> inside >> macros are global... I am +1 for making them local, but all the macros >> should be checked, since some of them might use this "feature". > > Velocity Macros *are* local (i.e. we're using the local macro > configuration option from Velocity). > > <property> > <name>velocimacro.permissions.allow.inline.local.scope</ > name> > <value>true</value> > </property> > > However for the include feature of XWiki Syntax 1.0 to work we have a > hack in the velocity module to allow macros to span more than 1 > document. > This is not required for the XWiki Syntax 2.0 (AFAIR) but we need it > for the 1.0 syntax to continue working. >
Vincent, this is not about macros, but about $variables used in macros. For example: #macro(doSomething) #set($a = 'b') #end #doSomething() $a => prints b, $a is now a global variable outside the scope of the macro. -- Sergiu Dumitriu http://purl.org/net/sergiu/ _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

