Author: kkolinko Date: Thu Feb 25 02:58:25 2010 New Revision: 916097 URL: http://svn.apache.org/viewvc?rev=916097&view=rev Log: fix for #mergeIntoWebXml() Note that the "inserted" flag was never set to true in the old code.
Modified: tomcat/trunk/java/org/apache/jasper/JspC.java Modified: tomcat/trunk/java/org/apache/jasper/JspC.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/JspC.java?rev=916097&r1=916096&r2=916097&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/jasper/JspC.java (original) +++ tomcat/trunk/java/org/apache/jasper/JspC.java Thu Feb 25 02:58:25 2010 @@ -882,9 +882,9 @@ boolean inserted = false; int current = reader.read(); while (current > -1) { - if (!inserted && current == '<') { + if (current == '<') { String element = getElement(reader); - if (insertBefore.contains(element)) { + if (!inserted && insertBefore.contains(element)) { // Insert generated content here writer.println(insertStartMarker); while (true) { @@ -898,11 +898,26 @@ writer.println(insertEndMarker); writer.println(); writer.write(element); - } else if (element.contains(insertStartMarker)) { + inserted = true; + } else if (element.equals(insertStartMarker)) { // Skip the previous auto-generated content - while (!element.contains(insertEndMarker)) { - element = getElement(reader); + while (true) { + current = reader.read(); + if (current < 0) { + throw new EOFException(); + } + if (current == '<') { + element = getElement(reader); + if (element.equals(insertEndMarker)) { + break; + } + } } + current = reader.read(); + while (current == '\n' || current == '\r') { + current = reader.read(); + } + continue; } else { writer.write(element); } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org