You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by ge...@apache.org on 2010/11/20 03:53:53 UTC
svn commit: r1037107 - in
/geronimo/external/trunk/tomcat-parent-7.0.0/jasper/src/main/java/org/apache/jasper:
compiler/Parser.java util/UniqueAttributesImpl.java
Author: genspring
Date: Sat Nov 20 02:53:53 2010
New Revision: 1037107
URL: http://svn.apache.org/viewvc?rev=1037107&view=rev
Log:
https://issues.apache.org/bugzilla/show_bug.cgi?id=49297, the tag directive should also be applied the same logic of page directive according to spec.
Modified:
geronimo/external/trunk/tomcat-parent-7.0.0/jasper/src/main/java/org/apache/jasper/compiler/Parser.java
geronimo/external/trunk/tomcat-parent-7.0.0/jasper/src/main/java/org/apache/jasper/util/UniqueAttributesImpl.java
Modified: geronimo/external/trunk/tomcat-parent-7.0.0/jasper/src/main/java/org/apache/jasper/compiler/Parser.java
URL: http://svn.apache.org/viewvc/geronimo/external/trunk/tomcat-parent-7.0.0/jasper/src/main/java/org/apache/jasper/compiler/Parser.java?rev=1037107&r1=1037106&r2=1037107&view=diff
==============================================================================
--- geronimo/external/trunk/tomcat-parent-7.0.0/jasper/src/main/java/org/apache/jasper/compiler/Parser.java (original)
+++ geronimo/external/trunk/tomcat-parent-7.0.0/jasper/src/main/java/org/apache/jasper/compiler/Parser.java Sat Nov 20 02:53:53 2010
@@ -152,8 +152,8 @@ class Parser implements TagConstants {
Attributes parseAttributes() throws JasperException {
return parseAttributes(false);
}
- Attributes parseAttributes(boolean pageDirective) throws JasperException {
- UniqueAttributesImpl attrs = new UniqueAttributesImpl(pageDirective);
+ Attributes parseAttributes(boolean pageOrTagDirective) throws JasperException {
+ UniqueAttributesImpl attrs = new UniqueAttributesImpl(pageOrTagDirective);
reader.skipSpaces();
int ws = 1;
@@ -572,7 +572,7 @@ class Parser implements TagConstants {
* Attribute)*
*/
private void parseTagDirective(Node parent) throws JasperException {
- Attributes attrs = parseAttributes();
+ Attributes attrs = parseAttributes(true);
Node.TagDirective n = new Node.TagDirective(attrs, start, parent);
/*
Modified: geronimo/external/trunk/tomcat-parent-7.0.0/jasper/src/main/java/org/apache/jasper/util/UniqueAttributesImpl.java
URL: http://svn.apache.org/viewvc/geronimo/external/trunk/tomcat-parent-7.0.0/jasper/src/main/java/org/apache/jasper/util/UniqueAttributesImpl.java?rev=1037107&r1=1037106&r2=1037107&view=diff
==============================================================================
--- geronimo/external/trunk/tomcat-parent-7.0.0/jasper/src/main/java/org/apache/jasper/util/UniqueAttributesImpl.java (original)
+++ geronimo/external/trunk/tomcat-parent-7.0.0/jasper/src/main/java/org/apache/jasper/util/UniqueAttributesImpl.java Sat Nov 20 02:53:53 2010
@@ -32,15 +32,15 @@ public class UniqueAttributesImpl extend
private static final String IMPORT = "import";
private static final String PAGE_ENCODING = "pageEncoding";
- private final boolean pageDirective;
+ private final boolean pageOrTagDirective;
private final Set<String> qNames = new HashSet<String>();
public UniqueAttributesImpl() {
- this.pageDirective = false;
+ this.pageOrTagDirective = false;
}
- public UniqueAttributesImpl(boolean pageDirective) {
- this.pageDirective = pageDirective;
+ public UniqueAttributesImpl(boolean pageOrTagDirective) {
+ this.pageOrTagDirective = pageOrTagDirective;
}
@Override
@@ -93,7 +93,7 @@ public class UniqueAttributesImpl extend
}
private void handleDuplicate(String qName, String value) {
- if (pageDirective) {
+ if (pageOrTagDirective) {
if (IMPORT.equalsIgnoreCase(qName)) {
// Always merge imports
int i = super.getIndex(IMPORT);