You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by sv...@apache.org on 2012/04/25 00:55:27 UTC
git commit: WICKET-4505 unescape markup attribute during parsing,
don't unescape while rendering
Updated Branches:
refs/heads/wicket-1.5.x 6cbcea2a2 -> f3c9a37e6
WICKET-4505 unescape markup attribute during parsing, don't unescape while rendering
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/f3c9a37e
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/f3c9a37e
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/f3c9a37e
Branch: refs/heads/wicket-1.5.x
Commit: f3c9a37e675a005d6f6814ac9d2835e73059a8ae
Parents: 6cbcea2
Author: Sven Meier <sv...@apache.org>
Authored: Wed Apr 25 00:55:02 2012 +0200
Committer: Sven Meier <sv...@apache.org>
Committed: Wed Apr 25 00:55:02 2012 +0200
----------------------------------------------------------------------
.../apache/wicket/markup/parser/TagAttributes.java | 2 +-
.../apache/wicket/markup/parser/XmlPullParser.java | 4 ++++
.../markup/ComponentTagAttributeEscapingTest.java | 4 ++--
3 files changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/f3c9a37e/wicket-core/src/main/java/org/apache/wicket/markup/parser/TagAttributes.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/parser/TagAttributes.java b/wicket-core/src/main/java/org/apache/wicket/markup/parser/TagAttributes.java
index 6f9719d..041b0cd 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/parser/TagAttributes.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/parser/TagAttributes.java
@@ -54,7 +54,7 @@ public class TagAttributes extends ValueMap
public final Object put(String key, Object value)
{
- return super.put(key, unescapeHtml(value));
+ return super.put(key, value);
}
@Override
http://git-wip-us.apache.org/repos/asf/wicket/blob/f3c9a37e/wicket-core/src/main/java/org/apache/wicket/markup/parser/XmlPullParser.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/parser/XmlPullParser.java b/wicket-core/src/main/java/org/apache/wicket/markup/parser/XmlPullParser.java
index d074650..d0cad87 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/parser/XmlPullParser.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/parser/XmlPullParser.java
@@ -31,6 +31,7 @@ import org.apache.wicket.util.lang.Args;
import org.apache.wicket.util.parse.metapattern.parsers.TagNameParser;
import org.apache.wicket.util.parse.metapattern.parsers.VariableAssignmentParser;
import org.apache.wicket.util.resource.ResourceStreamNotFoundException;
+import org.apache.wicket.util.string.Strings;
/**
* A fairly shallow markup pull parser which parses a markup string of a given type of markup (for
@@ -653,6 +654,9 @@ public final class XmlPullParser implements IXmlPullParser
// Trim trailing whitespace
value = value.trim();
+ // Unescape
+ value = Strings.unescapeMarkup(value).toString();
+
// Get key
final String key = attributeParser.getKey();
http://git-wip-us.apache.org/repos/asf/wicket/blob/f3c9a37e/wicket-core/src/test/java/org/apache/wicket/markup/ComponentTagAttributeEscapingTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/ComponentTagAttributeEscapingTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/ComponentTagAttributeEscapingTest.java
index b8f0da6..6729767 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/ComponentTagAttributeEscapingTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/ComponentTagAttributeEscapingTest.java
@@ -45,8 +45,8 @@ public class ComponentTagAttributeEscapingTest extends WicketTestCase
assertTrue("must not be double escaped", response.contains("Watch escaped value: >>"));
assertTrue("following the last assert logic, this one would true",
response.contains("alerting: &"));
- assertTrue("not double escape manually add attributes",
- response.contains("some_attribute=\"&\""));
+ assertTrue("escape manually added attributes",
+ response.contains("some_attribute=\"&amp;\""));
}
/**