RFR: 8032909: XSLT string-length returns incorrect length when string includes complementary chars

Aleksej Efimov aleksej.efimov at oracle.com
Thu Feb 20 14:54:55 UTC 2014


There is a problem in XSLT string-length function:
When string passed to this function contains complementary chars the 
current implementation of XPath treates this sequence as two characters 
(the string-length returns 2). But according to the w3 spec it should be 
treated as a single XPath character [1].

Please, review the proposed fix for this problem [2]. It replaces the 
'length' call in xslt compiler with a call to 'codePointCount'. Also new 
regression test was added.

To verify the fix following tests were executed:
1. JCK test sets: api/xsl api/xinclude api/javax_xml api/org_xml xml_schema
2. Regression tests from 'jdk_other' testset (includes added regression 

Thanks in advance,

[1] http://www.w3.org/TR/xpath/#strings
[2] http://cr.openjdk.java.net/~aefimov/8032909/webrev.00

More information about the core-libs-dev mailing list