Reviewed by Maciej.
authorap@webkit.org <ap@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 23 Nov 2007 08:29:59 +0000 (08:29 +0000)
committerap@webkit.org <ap@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 23 Nov 2007 08:29:59 +0000 (08:29 +0000)
commit213c5c0d18b1e6b2902acbe4ce307f32e0c3a850
tree7b1aa80af1785b478c92e897be1d627feb7c5b14
parent341ffff51061a6a15dc33ce79b554cdb85d65101
    Reviewed by Maciej.

        http://bugs.webkit.org/show_bug.cgi?id=16077
        <rdar://problem/5609785> XSLT processor <xsl:sort> algorithm is incompatible with other
        browser implementations

        Test: fast/xsl/sort-unicode.xml

        * xml/XSLTProcessor.cpp:
        (WebCore::XSLTProcessor::transformToString): Set a custom sort function.

        * xml/XSLTUnicodeSort.cpp: Added.
        (init_xsltTransformError):
        (xsltTransformError):
        (WebCore::xsltUnicodeSortFunction):
        * xml/XSLTUnicodeSort.h: Added.
        ICU-based implementation of xsl:sort, using an example from libxslt distribution.
        Only minimal coding style fixes to ease synchronization with upstream in the future.

        * icu/unicode/ucol.h: Added.
        * icu/unicode/uset.h: Added.
        Taken from ICU 3.2

        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * WebCoreSources.bkl:
        Added XSLTUnicodeSort.cpp.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27984 268f45cc-cd09-0410-ab3c-d52691b4dbfc
14 files changed:
LayoutTests/ChangeLog
LayoutTests/fast/xsl/sort-unicode-expected.txt [new file with mode: 0644]
LayoutTests/fast/xsl/sort-unicode.xml [new file with mode: 0644]
LayoutTests/fast/xsl/sort-unicode.xsl [new file with mode: 0644]
WebCore/ChangeLog
WebCore/WebCore.pro
WebCore/WebCore.vcproj/WebCore.vcproj
WebCore/WebCore.xcodeproj/project.pbxproj
WebCore/WebCoreSources.bkl
WebCore/icu/unicode/ucol.h [new file with mode: 0644]
WebCore/icu/unicode/uset.h [new file with mode: 0644]
WebCore/xml/XSLTProcessor.cpp
WebCore/xml/XSLTUnicodeSort.cpp [new file with mode: 0644]
WebCore/xml/XSLTUnicodeSort.h [new file with mode: 0644]