Fix NPE and TCK failures caused by previous fix for bug 49799.
authormarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Sat, 2 Oct 2010 21:14:37 +0000 (21:14 +0000)
committermarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Sat, 2 Oct 2010 21:14:37 +0000 (21:14 +0000)
git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@1003891 13f79535-47bb-0310-9956-ffa450edef68

java/org/apache/jasper/compiler/Generator.java

index 8e0ac84..0d4321e 100644 (file)
@@ -1868,9 +1868,14 @@ class Generator {
                 if (attrs[i].isNamedAttribute()) {
                     NamedAttribute attr = attrs[i].getNamedAttributeNode();
                     Node.JspAttribute omitAttr = attr.getOmit();
-                    String omit = attributeValue(omitAttr, false, boolean.class);
-                    if ("true".equals(omit)) {
-                        continue;
+                    String omit;
+                    if (omitAttr == null) {
+                        omit = "false";
+                    } else {
+                        omit = attributeValue(omitAttr, false, boolean.class);
+                        if ("true".equals(omit)) {
+                            continue;
+                        }
                     }
                     value = generateNamedAttributeValue(
                             attrs[i].getNamedAttributeNode());
@@ -1878,8 +1883,9 @@ class Generator {
                         nvp = " + \" " + attrs[i].getName() + "=\\\"\" + " +
                                 value + " + \"\\\"\"";
                     } else {
-                        nvp = " + (Boolean.valueOf(" + omit + ")?\"\":\" " + attrs[i].getName() +
-                                "=\\\"\" + " + value + " + \"\\\"\")";
+                        nvp = " + (Boolean.valueOf(" + omit + ")?\"\":\" " +
+                                attrs[i].getName() + "=\\\"\" + " + value +
+                                " + \"\\\"\")";
                     }
                 } else {
                     value = attributeValue(attrs[i], false, Object.class);