luehe       2002/08/19 13:29:12

  Modified:    jasper2/src/share/org/apache/jasper/compiler
                        ScriptingVariabler.java
  Log:
  Fixed bug which caused VariableInfos to be ignored when determining which scripting 
vars need to be declared
  
  Revision  Changes    Path
  1.3       +21 -21    
jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ScriptingVariabler.java
  
  Index: ScriptingVariabler.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/ScriptingVariabler.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- ScriptingVariabler.java   19 Aug 2002 16:54:16 -0000      1.2
  +++ ScriptingVariabler.java   19 Aug 2002 20:29:12 -0000      1.3
  @@ -130,19 +130,14 @@
            else
                ownRange = parent.getNumCount();
   
  -         if (tagVarInfos != null) {
  -             for (int i=0; i<tagVarInfos.length; i++) {
  -                 if (tagVarInfos[i].getScope() != scope
  -                         || !tagVarInfos[i].getDeclare()
  -                         || tagVarInfos[i].getFragment() != null) {
  +         if (varInfos != null) {
  +             for (int i=0; i<varInfos.length; i++) {
  +                 if (varInfos[i].getScope() != scope
  +                         || !varInfos[i].getDeclare()) {
                        continue;
                    }
  -                 String varName = tagVarInfos[i].getNameGiven();
  -                 if (varName == null) {
  -                     varName = n.getTagData().getAttributeString(
  -                                     tagVarInfos[i].getNameFromAttribute());
  -                 }
  -
  +                 String varName = varInfos[i].getVarName();
  +                 
                    if (scope == VariableInfo.AT_BEGIN 
                            || scope == VariableInfo.AT_END
                            || (scope == VariableInfo.NESTED
  @@ -152,22 +147,27 @@
                        if (currentRange == null
                                || ownRange.compareTo(currentRange) > 0) {
                            scriptVars.put(varName, ownRange);
  -                         vec.add(tagVarInfos[i]);
  +                         vec.add(varInfos[i]);
                        }
                    } else {
                        // scope equals NESTED AND node implements BodyTag
                        if (n.getCustomNestingLevel() == 0) {
  -                         vec.add(tagVarInfos[i]);
  +                         vec.add(varInfos[i]);
                        }
                    }
                }
            } else {
  -             for (int i=0; i<varInfos.length; i++) {
  -                 if (varInfos[i].getScope() != scope
  -                         || !varInfos[i].getDeclare()) {
  +             for (int i=0; i<tagVarInfos.length; i++) {
  +                 if (tagVarInfos[i].getScope() != scope
  +                         || !tagVarInfos[i].getDeclare()
  +                         || tagVarInfos[i].getFragment() != null) {
                        continue;
                    }
  -                 String varName = varInfos[i].getVarName();
  +                 String varName = tagVarInfos[i].getNameGiven();
  +                 if (varName == null) {
  +                     varName = n.getTagData().getAttributeString(
  +                                     tagVarInfos[i].getNameFromAttribute());
  +                 }
   
                    if (scope == VariableInfo.AT_BEGIN 
                            || scope == VariableInfo.AT_END
  @@ -178,7 +178,7 @@
                        if (currentRange == null
                                || ownRange.compareTo(currentRange) > 0) {
                            scriptVars.put(varName, ownRange);
  -                         vec.add(varInfos[i]);
  +                         vec.add(tagVarInfos[i]);
                        }
                    } else {
                        // scope equals NESTED AND node implements BodyTag
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to