Author: awiner
Date: Wed Mar 18 17:26:42 2009
New Revision: 755665
URL: http://svn.apache.org/viewvc?rev=755665&view=rev
Log:
SHINDIG-983: NekoSerializer.printStartElement() is outputting empty attributes
in a way that isn't XML compliant
- Patch from Jordan Zimmerman, with some changes (esp. adding a test)
Modified:
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/parse/nekohtml/NekoSerializer.java
incubator/shindig/trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/parse/nekohtml/test-expected.html
incubator/shindig/trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/parse/nekohtml/test.html
Modified:
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/parse/nekohtml/NekoSerializer.java
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/parse/nekohtml/NekoSerializer.java?rev=755665&r1=755664&r2=755665&view=diff
==============================================================================
---
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/parse/nekohtml/NekoSerializer.java
(original)
+++
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/parse/nekohtml/NekoSerializer.java
Wed Mar 18 17:26:42 2009
@@ -144,12 +144,13 @@
Attr attr = (Attr)attributes.item(i);
String attrName = attr.getNodeName();
output.append(' ').append(attrName);
- if (attr.getNodeValue() != null &&
- attr.getNodeValue().length() > 0) {
+ if (attr.getNodeValue() != null) {
output.append("=\"");
- boolean isUrlAttribute =
- elem.getNamespaceURI() == null && URL_ATTRIBUTES.contains(attrName);
- printAttributeValue(attr.getNodeValue(), output, isUrlAttribute);
+ if (attr.getNodeValue().length() != 0) {
+ boolean isUrlAttribute =
+ elem.getNamespaceURI() == null &&
URL_ATTRIBUTES.contains(attrName);
+ printAttributeValue(attr.getNodeValue(), output, isUrlAttribute);
+ }
output.append('"');
}
}
Modified:
incubator/shindig/trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/parse/nekohtml/test-expected.html
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/parse/nekohtml/test-expected.html?rev=755665&r1=755664&r2=755665&view=diff
==============================================================================
---
incubator/shindig/trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/parse/nekohtml/test-expected.html
(original)
+++
incubator/shindig/trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/parse/nekohtml/test-expected.html
Wed Mar 18 17:26:42 2009
@@ -12,6 +12,7 @@
<table><tr><td>a cell</td></tr></table>
</div>
<p>Lorem ipsum</p>
+ <a href="/test.html" title="">link</a>
<form action="/test/submit">
<div>
<input type="hidden" value="something">
Modified:
incubator/shindig/trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/parse/nekohtml/test.html
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/parse/nekohtml/test.html?rev=755665&r1=755664&r2=755665&view=diff
==============================================================================
---
incubator/shindig/trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/parse/nekohtml/test.html
(original)
+++
incubator/shindig/trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/parse/nekohtml/test.html
Wed Mar 18 17:26:42 2009
@@ -12,6 +12,7 @@
<table><tr><td>a cell</td></tr></table>
</div>
<p>Lorem ipsum</p>
+ <a href="/test.html" title="">link</a>
<form action="/test/submit">
<div>
<input type="hidden" value="something">