Log Message: |
"Applied fix from trunk for revision: 1358735 "
------------------------------------------------------------------------
r1358735 | jleroux | 2012-07-08 15:15:56 +0200 (dim., 08 juil. 2012) | 7 lines
A patch from Daniel Riquelme "Not getting right behavior of use-when when using in multi" https://issues.apache.org/jira/browse/OFBIZ-4932
The problem is that on multi forms the bshInterpreter gets pushed to higher levels on the context stack when iterating the form rows.
What is intended in the code is to reset the bshInterpreter (this.resetBshInterpreter(context) for each row iteration, this reset translates into a key object being removed from context, this context is stored in a stack data structure. The removal assumes the value will always be at level 0, yet what happens is that the value resides at a higher level.
The fix is to perform the removal prior to context modification, this way the bshInterpereter object would be at level 0 upon removal.
jleroux: since the BshInterpreter is reseted just after with localContext this should not have any bad side effects
------------------------------------------------------------------------
|