sboag 00/12/21 07:12:22
Modified: java/src/org/apache/xpath VariableStack.java
Log:
Try not to check for arg.isParamVar() is global var.
Revision Changes Path
1.20 +13 -10 xml-xalan/java/src/org/apache/xpath/VariableStack.java
Index: VariableStack.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/src/org/apache/xpath/VariableStack.java,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- VariableStack.java 2000/12/21 15:01:26 1.19
+++ VariableStack.java 2000/12/21 15:12:21 1.20
@@ -416,24 +416,27 @@
{
Stack frame = getCurrentFrame();
+ Stack gframe = (Stack)this.elementAt(0);
- for (int i = (frame.size() - 1); i >= 0; i--)
+ if(frame != gframe)
{
- Arg arg = (Arg)frame.elementAt(i);
-
- if (arg.getQName().equals(name) && !arg.isParamVar())
+ for (int i = (frame.size() - 1); i >= 0; i--)
{
- XObject val = arg.getVal();
- if(val.getType() == XObject.CLASS_UNRESOLVEDVARIABLE)
+ Arg arg = (Arg)frame.elementAt(i);
+
+ if (arg.getQName().equals(name) && !arg.isParamVar())
{
- val = val.execute(xctxt);
- arg.setVal(val);
+ XObject val = arg.getVal();
+ if(val.getType() == XObject.CLASS_UNRESOLVEDVARIABLE)
+ {
+ val = val.execute(xctxt);
+ arg.setVal(val);
+ }
+ return val;
}
- return val;
}
}
- Stack gframe = (Stack)this.elementAt(0);
if(gframe == frame)
return null;