Updated Branches: refs/heads/master 10f86930a -> 498b51bc1
VYSPER-341: fix parsing multiple char refs Project: http://git-wip-us.apache.org/repos/asf/mina-vysper/repo Commit: http://git-wip-us.apache.org/repos/asf/mina-vysper/commit/498b51bc Tree: http://git-wip-us.apache.org/repos/asf/mina-vysper/tree/498b51bc Diff: http://git-wip-us.apache.org/repos/asf/mina-vysper/diff/498b51bc Branch: refs/heads/master Commit: 498b51bc178a8e65ef29ed12695ff3f62edb6ceb Parents: 10f8693 Author: Bernd Fondermann <[email protected]> Authored: Mon Jun 3 00:38:58 2013 +0200 Committer: Bernd Fondermann <[email protected]> Committed: Mon Jun 3 00:38:58 2013 +0200 ---------------------------------------------------------------------- .../org/apache/vysper/xml/sax/impl/XMLParser.java | 2 +- .../vysper/xml/sax/impl/ParseTextTestCase.java | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mina-vysper/blob/498b51bc/nbxml/src/main/java/org/apache/vysper/xml/sax/impl/XMLParser.java ---------------------------------------------------------------------- diff --git a/nbxml/src/main/java/org/apache/vysper/xml/sax/impl/XMLParser.java b/nbxml/src/main/java/org/apache/vysper/xml/sax/impl/XMLParser.java index 96ca040..6be4bb4 100644 --- a/nbxml/src/main/java/org/apache/vysper/xml/sax/impl/XMLParser.java +++ b/nbxml/src/main/java/org/apache/vysper/xml/sax/impl/XMLParser.java @@ -54,7 +54,7 @@ public class XMLParser implements TokenListener { public static final Pattern NAME_PREFIX_PATTERN = Pattern.compile("^xml", Pattern.CASE_INSENSITIVE); - public static final Pattern UNESCAPE_UNICODE_PATTERN = Pattern.compile("\\&\\#(x?)(.+);"); + public static final Pattern UNESCAPE_UNICODE_PATTERN = Pattern.compile("\\&\\#(x?)([0-9a-fA-F]++);"); private ContentHandler contentHandler; http://git-wip-us.apache.org/repos/asf/mina-vysper/blob/498b51bc/nbxml/src/test/java/org/apache/vysper/xml/sax/impl/ParseTextTestCase.java ---------------------------------------------------------------------- diff --git a/nbxml/src/test/java/org/apache/vysper/xml/sax/impl/ParseTextTestCase.java b/nbxml/src/test/java/org/apache/vysper/xml/sax/impl/ParseTextTestCase.java index 5305a9b..d312828 100644 --- a/nbxml/src/test/java/org/apache/vysper/xml/sax/impl/ParseTextTestCase.java +++ b/nbxml/src/test/java/org/apache/vysper/xml/sax/impl/ParseTextTestCase.java @@ -88,6 +88,18 @@ public class ParseTextTestCase extends AbstractAsyncXMLReaderTestCase { assertFalse(events.hasNext()); } + public void testConsecutiveUnicodeEscape() throws Exception { + Iterator<TestEvent> events = parse("<root>    </root>").iterator(); + + assertStartDocument(events.next()); + assertStartElement("", "root", "root", events.next()); + assertText("\u00A0\u00A0\u00A0\u00A0", events.next()); + assertEndElement("", "root", "root", events.next()); + assertEndDocument(events.next()); + + assertFalse(events.hasNext()); + } + public void testTextOnly() throws Exception { Iterator<TestEvent> events = parse("text</root>").iterator();
