kinman      2002/09/12 15:51:23

  Modified:    jasper2/src/share/org/apache/jasper/compiler Generator.java
  Log:
  - Fix 12594: When in a fragment, a SKIP_PAGE return should be converted to a
    SkipException.
  
  Revision  Changes    Path
  1.100     +9 -5      
jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java
  
  Index: Generator.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java,v
  retrieving revision 1.99
  retrieving revision 1.100
  diff -u -r1.99 -r1.100
  --- Generator.java    11 Sep 2002 19:07:32 -0000      1.99
  +++ Generator.java    12 Sep 2002 22:51:23 -0000      1.100
  @@ -694,6 +694,7 @@
        private String parent;
        private String simpleTagHandlerVar;
        private boolean isSimpleTagHandler;
  +     private boolean isFragment;
        private boolean isTagFile;
        private ServletWriter out;
        private MethodsBuffer methodsBuffer;
  @@ -961,7 +962,7 @@
            out.print( pageParam );
            printParams(n, pageParam, page.isLiteral());
            out.println(");");
  -         if (isTagFile) {
  +         if (isTagFile || isFragment) {
                out.printil("throw new javax.servlet.jsp.SkipPageException();");
            } else {
                out.printil((methodNesting > 0)? "return true;": "return;");
  @@ -2094,7 +2095,7 @@
            out.print(tagHandlerVar);
            out.println(".doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE)");
            out.pushIndent();
  -         if (isTagFile) {
  +         if (isTagFile || isFragment) {
                out.printil("throw new javax.servlet.jsp.SkipPageException();");
            } else {
                out.printil((methodNesting > 0)? "return true;": "return;");
  @@ -2667,9 +2668,12 @@
            out = fragment.getMethodsBuffer().getOut();
            String tmpParent = parent;
            parent = tagHandlerVar;
  +         boolean tmpIsFragment = isFragment;
  +         isFragment = true;
               visitBody( n );
               out = outSave;
            parent = tmpParent;
  +         isFragment = tmpIsFragment;
            fragmentHelperClass.closeFragment(fragment, methodNesting);
               // XXX - Need to change pageContext to jspContext if
               // we're not in a place where pageContext is defined (e.g.
  
  
  

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

Reply via email to