In short, we wanted "localscope" on for macros due to some recursion. However, this meant that both puts /and/ gets only use the localscope.
For gets this seems overly restrictive--if I set "foo=bar" in my base VelocityContext, and then get into my macro, it should be able to reach that "foo" even if it can't overwrite it.
The attached patch relaxes the "VMContext.get" to let it check first the local scope and then the inner scope. Included is a test that makes sure an "outsideVar" is accessible from VMContext even if localscope is on.
|Transition||Time In Source Status||Execution Times||Last Executer||Last Execution Date|
|2d 17h 34m||1||Will Glass-Husain||24/Sep/06 00:40|
|165d 24m||1||Henning Schmiedehausen||08/Mar/07 00:04|
|Workflow||Default workflow, editable Closed status [ 12551370 ]||jira [ 12552078 ]|
|Workflow||jira [ 12384166 ]||Default workflow, editable Closed status [ 12551370 ]|
|Status||Resolved [ 5 ]||Closed [ 6 ]|
|Resolution||Fixed [ 1 ]|
|Status||Open [ 1 ]||Resolved [ 5 ]|
|Assignee||Will Glass-Husain [ wglass ]|
|Priority||Major [ 3 ]||Minor [ 4 ]|
|Fix Version/s||1.5 [ 12310253 ]|