[webkit-changes] cvs commit: WebCore/layout-tests/fast/xsl/resources unicode.xsl xslt-enc-cyr.xsl xslt-enc.xsl xslt-enc16.xsl

Vicki vicki at opensource.apple.com
Wed Sep 21 14:05:58 PDT 2005


vicki       05/09/21 14:05:58

  Modified:    khtml/misc loader.cpp loader.h
               khtml/xsl xslt_processorimpl.cpp
               .        ChangeLog
  Added:       layout-tests/fast/xsl xslt-enc-cyr-expected.checksum
                        xslt-enc-cyr-expected.png xslt-enc-cyr-expected.txt
                        xslt-enc-cyr.xml xslt-enc-expected.checksum
                        xslt-enc-expected.png xslt-enc-expected.txt
                        xslt-enc.xml xslt-enc16-expected.checksum
                        xslt-enc16-expected.png xslt-enc16-expected.txt
                        xslt-enc16.xml xslt-enc16to16-expected.checksum
                        xslt-enc16to16-expected.png
                        xslt-enc16to16-expected.txt xslt-enc16to16.xml
                        xslt_unicode-expected.checksum
                        xslt_unicode-expected.png xslt_unicode-expected.txt
                        xslt_unicode.xml
               layout-tests/fast/xsl/resources unicode.xsl xslt-enc-cyr.xsl
                        xslt-enc.xsl xslt-enc16.xsl
  Log:
          Changes by Romain Brestac, reviewed by Darin.
  
          - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3418
          (unicode characters not preserved after a xslt transformation)
  
          * khtml/misc/loader.cpp:
          (CachedXSLStyleSheet::CachedXSLStyleSheet):
          (CachedXSLStyleSheet::data):
          * khtml/misc/loader.h:
          * khtml/xsl/xslt_processorimpl.cpp:
          (DOM::XSLTProcessorImpl::addToResult):
          (DOM::XSLTProcessorImpl::documentFromXMLDocPtr):
  
  	Test cases added:
  
          * layout-tests/fast/xsl/resources/unicode.xsl: Added.
          * layout-tests/fast/xsl/resources/xslt-enc-cyr.xsl: Added.
          * layout-tests/fast/xsl/resources/xslt-enc.xsl: Added.
          * layout-tests/fast/xsl/resources/xslt-enc16.xsl: Added.
          * layout-tests/fast/xsl/xslt-enc-cyr-expected.checksum: Added.
          * layout-tests/fast/xsl/xslt-enc-cyr-expected.png: Added.
          * layout-tests/fast/xsl/xslt-enc-cyr-expected.txt: Added.
          * layout-tests/fast/xsl/xslt-enc-cyr.xml: Added.
          * layout-tests/fast/xsl/xslt-enc-expected.checksum: Added.
          * layout-tests/fast/xsl/xslt-enc-expected.png: Added.
          * layout-tests/fast/xsl/xslt-enc-expected.txt: Added.
          * layout-tests/fast/xsl/xslt-enc.xml: Added.
          * layout-tests/fast/xsl/xslt-enc16-expected.checksum: Added.
          * layout-tests/fast/xsl/xslt-enc16-expected.png: Added.
          * layout-tests/fast/xsl/xslt-enc16-expected.txt: Added.
          * layout-tests/fast/xsl/xslt-enc16.xml: Added.
          * layout-tests/fast/xsl/xslt-enc16to16-expected.checksum: Added.
          * layout-tests/fast/xsl/xslt-enc16to16-expected.png: Added.
          * layout-tests/fast/xsl/xslt-enc16to16-expected.txt: Added.
          * layout-tests/fast/xsl/xslt-enc16to16.xml: Added.
          * layout-tests/fast/xsl/xslt_unicode-expected.checksum: Added.
          * layout-tests/fast/xsl/xslt_unicode-expected.png: Added.
          * layout-tests/fast/xsl/xslt_unicode-expected.txt: Added.
          * layout-tests/fast/xsl/xslt_unicode.xml: Added.
  
  Revision  Changes    Path
  1.75      +3 -2      WebCore/khtml/misc/loader.cpp
  
  Index: loader.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/misc/loader.cpp,v
  retrieving revision 1.74
  retrieving revision 1.75
  diff -u -r1.74 -r1.75
  --- loader.cpp	8 Sep 2005 21:35:29 -0000	1.74
  +++ loader.cpp	21 Sep 2005 21:05:53 -0000	1.75
  @@ -52,6 +52,7 @@
   #include <kdebug.h>
   #include "khtml_factory.h"
   #include "khtml_part.h"
  +#include "decoder.h"
   
   #include "html/html_documentimpl.h"
   #include "css/css_stylesheetimpl.h"
  @@ -1098,7 +1099,7 @@
       // load the file
       Cache::loader()->load(dl, this, false);
       m_loading = true;
  -    m_codec = QTextCodec::codecForName("iso8859-1");
  +    m_decoder = new Decoder;
   }
   
   void CachedXSLStyleSheet::ref(CachedObjectClient *c)
  @@ -1122,7 +1123,7 @@
       if(!eof) return;
       buffer.close();
       setSize(buffer.buffer().size());
  -    QString data = m_codec->toUnicode( buffer.buffer().data(), size() );
  +    QString data = m_decoder->decode( buffer.buffer().data(), size() );
       m_sheet = DOMString(data);
       m_loading = false;
       
  
  
  
  1.44      +2 -1      WebCore/khtml/misc/loader.h
  
  Index: loader.h
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/misc/loader.h,v
  retrieving revision 1.43
  retrieving revision 1.44
  diff -u -r1.43 -r1.44
  --- loader.h	16 Sep 2005 22:42:15 -0000	1.43
  +++ loader.h	21 Sep 2005 21:05:53 -0000	1.44
  @@ -86,6 +86,7 @@
       class CachedObject;
       class Request;
       class DocLoader;
  +    class Decoder;
   
    #define MAX_LRU_LISTS 20
       
  @@ -431,7 +432,7 @@
           
   protected:
           DOM::DOMString m_sheet;
  -        QTextCodec* m_codec;
  +        Decoder* m_decoder;
       };
   #endif
       
  
  
  
  1.9       +1 -2      WebCore/khtml/xsl/xslt_processorimpl.cpp
  
  Index: xslt_processorimpl.cpp
  ===================================================================
  RCS file: /cvs/root/WebCore/khtml/xsl/xslt_processorimpl.cpp,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- xslt_processorimpl.cpp	31 Aug 2005 07:34:55 -0000	1.8
  +++ xslt_processorimpl.cpp	21 Sep 2005 21:05:54 -0000	1.9
  @@ -143,7 +143,7 @@
   
   void XSLTProcessorImpl::addToResult(const char* buffer, int len)
   {
  -    m_resultOutput += QString(buffer, len);
  +    m_resultOutput += QString::fromUtf8(buffer, len);
   }
   
   DocumentImpl *XSLTProcessorImpl::documentFromXMLDocPtr(xmlDocPtr resultDoc, xsltStylesheetPtr sheet)
  @@ -180,7 +180,6 @@
           result->attach();
           result->setURL(m_sourceDocument->URL());
           result->setBaseURL(m_sourceDocument->baseURL());
  -        result->setDecoder(m_sourceDocument->decoder()); // FIXME: Should just be UTF-16.
           result->docLoader()->setShowAnimations(m_sourceDocument->docLoader()->showAnimations());
           result->setTransformSourceDocument(m_sourceDocument);
   
  
  
  
  1.145     +42 -0     WebCore/ChangeLog
  
  Index: ChangeLog
  ===================================================================
  RCS file: /cvs/root/WebCore/ChangeLog,v
  retrieving revision 1.144
  retrieving revision 1.145
  diff -u -r1.144 -r1.145
  --- ChangeLog	21 Sep 2005 17:32:37 -0000	1.144
  +++ ChangeLog	21 Sep 2005 21:05:54 -0000	1.145
  @@ -1,5 +1,47 @@
   2005-09-21  Vicki Murley  <vicki at apple.com>
   
  +        Changes by Romain Brestac, reviewed by Darin.
  +
  +        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3418
  +        (unicode characters not preserved after a xslt transformation)
  +
  +        * khtml/misc/loader.cpp:
  +        (CachedXSLStyleSheet::CachedXSLStyleSheet):
  +        (CachedXSLStyleSheet::data):
  +        * khtml/misc/loader.h:
  +        * khtml/xsl/xslt_processorimpl.cpp:
  +        (DOM::XSLTProcessorImpl::addToResult):
  +        (DOM::XSLTProcessorImpl::documentFromXMLDocPtr):
  +
  +	Test cases added:
  +
  +        * layout-tests/fast/xsl/resources/unicode.xsl: Added.
  +        * layout-tests/fast/xsl/resources/xslt-enc-cyr.xsl: Added.
  +        * layout-tests/fast/xsl/resources/xslt-enc.xsl: Added.
  +        * layout-tests/fast/xsl/resources/xslt-enc16.xsl: Added.
  +        * layout-tests/fast/xsl/xslt-enc-cyr-expected.checksum: Added.
  +        * layout-tests/fast/xsl/xslt-enc-cyr-expected.png: Added.
  +        * layout-tests/fast/xsl/xslt-enc-cyr-expected.txt: Added.
  +        * layout-tests/fast/xsl/xslt-enc-cyr.xml: Added.
  +        * layout-tests/fast/xsl/xslt-enc-expected.checksum: Added.
  +        * layout-tests/fast/xsl/xslt-enc-expected.png: Added.
  +        * layout-tests/fast/xsl/xslt-enc-expected.txt: Added.
  +        * layout-tests/fast/xsl/xslt-enc.xml: Added.
  +        * layout-tests/fast/xsl/xslt-enc16-expected.checksum: Added.
  +        * layout-tests/fast/xsl/xslt-enc16-expected.png: Added.
  +        * layout-tests/fast/xsl/xslt-enc16-expected.txt: Added.
  +        * layout-tests/fast/xsl/xslt-enc16.xml: Added.
  +        * layout-tests/fast/xsl/xslt-enc16to16-expected.checksum: Added.
  +        * layout-tests/fast/xsl/xslt-enc16to16-expected.png: Added.
  +        * layout-tests/fast/xsl/xslt-enc16to16-expected.txt: Added.
  +        * layout-tests/fast/xsl/xslt-enc16to16.xml: Added.
  +        * layout-tests/fast/xsl/xslt_unicode-expected.checksum: Added.
  +        * layout-tests/fast/xsl/xslt_unicode-expected.png: Added.
  +        * layout-tests/fast/xsl/xslt_unicode-expected.txt: Added.
  +        * layout-tests/fast/xsl/xslt_unicode.xml: Added.
  +
  +2005-09-21  Vicki Murley  <vicki at apple.com>
  +
           Reviewed by Darin.
    
   	- fix these bugs
  
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc-cyr-expected.checksum
  
  Index: xslt-enc-cyr-expected.checksum
  ===================================================================
  659dedf3f454efbe0958c4d69e173205
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc-cyr-expected.png
  
  	<<Binary file>>
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc-cyr-expected.txt
  
  Index: xslt-enc-cyr-expected.txt
  ===================================================================
  layer at (0,0) size 800x600
    RenderCanvas at (0,0) size 800x600
  layer at (0,0) size 800x70
    RenderBlock {HTML} at (0,0) size 800x70
      RenderBody {BODY} at (8,8) size 784x54
        RenderText {TEXT} at (0,0) size 318x18
          text run at (0,0) width 318: "CHARACTERS IN XSLT: \x{414}\x{43E}\x{431}\x{430}\x{432}\x{43B}\x{435}\x{43D}\x{43D}\x{44B}\x{439} \x{442}\x{435}\x{43A}\x{441}\x{442} "
        RenderBR {BR} at (0,0) size 0x0
        RenderBR {BR} at (0,18) size 0x18
        RenderText {TEXT} at (0,36) size 222x18
          text run at (0,36) width 222: "SOURCE XML: \x{418}\x{441}\x{445}\x{43E}\x{434}\x{43D}\x{44B}\x{439} \x{442}\x{435}\x{43A}\x{441}\x{442}"
        RenderText {TEXT} at (0,0) size 0x0
  
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc-cyr.xml
  
  Index: xslt-enc-cyr.xml
  ===================================================================
  <?xml version="1.0" encoding="KOI8-R"?>
  <?xml-stylesheet type="text/xsl" href="resources/xslt-enc-cyr.xsl"?>
  
  <TEST>SOURCE XML: éÓÈÏÄÎÙÊ ÔÅËÓÔ</TEST>
  
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc-expected.checksum
  
  Index: xslt-enc-expected.checksum
  ===================================================================
  5eb6776e65397427378a4f58f8ad1433
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc-expected.png
  
  	<<Binary file>>
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc-expected.txt
  
  Index: xslt-enc-expected.txt
  ===================================================================
  layer at (0,0) size 800x600
    RenderCanvas at (0,0) size 800x600
  layer at (0,0) size 800x70
    RenderBlock {HTML} at (0,0) size 800x70
      RenderBody {BODY} at (8,8) size 784x54
        RenderText {TEXT} at (0,0) size 264x18
          text run at (0,0) width 264: "CHARACTERS IN XSLT: \x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9} "
        RenderBR {BR} at (0,0) size 0x0
        RenderBR {BR} at (0,18) size 0x18
        RenderText {TEXT} at (0,36) size 316x18
          text run at (0,36) width 316: "SOURCE XML: \x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}"
        RenderText {TEXT} at (0,0) size 0x0
  
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc.xml
  
  Index: xslt-enc.xml
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="resources/xslt-enc.xsl"?>
  
  <TEST>SOURCE XML: ééééééééééééééééééééééééééééé</TEST>
  
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc16-expected.checksum
  
  Index: xslt-enc16-expected.checksum
  ===================================================================
  5eb6776e65397427378a4f58f8ad1433
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc16-expected.png
  
  	<<Binary file>>
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc16-expected.txt
  
  Index: xslt-enc16-expected.txt
  ===================================================================
  layer at (0,0) size 800x600
    RenderCanvas at (0,0) size 800x600
  layer at (0,0) size 800x70
    RenderBlock {HTML} at (0,0) size 800x70
      RenderBody {BODY} at (8,8) size 784x54
        RenderText {TEXT} at (0,0) size 264x18
          text run at (0,0) width 264: "CHARACTERS IN XSLT: \x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9} "
        RenderBR {BR} at (0,0) size 0x0
        RenderBR {BR} at (0,18) size 0x18
        RenderText {TEXT} at (0,36) size 316x18
          text run at (0,36) width 316: "SOURCE XML: \x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}"
        RenderText {TEXT} at (0,0) size 0x0
  
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc16.xml
  
  	<<Binary file>>
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc16to16-expected.checksum
  
  Index: xslt-enc16to16-expected.checksum
  ===================================================================
  5eb6776e65397427378a4f58f8ad1433
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc16to16-expected.png
  
  	<<Binary file>>
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc16to16-expected.txt
  
  Index: xslt-enc16to16-expected.txt
  ===================================================================
  layer at (0,0) size 800x600
    RenderCanvas at (0,0) size 800x600
  layer at (0,0) size 800x70
    RenderBlock {HTML} at (0,0) size 800x70
      RenderBody {BODY} at (8,8) size 784x54
        RenderText {TEXT} at (0,0) size 264x18
          text run at (0,0) width 264: "CHARACTERS IN XSLT: \x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9} "
        RenderBR {BR} at (0,0) size 0x0
        RenderBR {BR} at (0,18) size 0x18
        RenderText {TEXT} at (0,36) size 316x18
          text run at (0,36) width 316: "SOURCE XML: \x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}\x{E9}"
        RenderText {TEXT} at (0,0) size 0x0
  
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt-enc16to16.xml
  
  	<<Binary file>>
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt_unicode-expected.checksum
  
  Index: xslt_unicode-expected.checksum
  ===================================================================
  29fafac42f5348a489740e141655a8cd
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt_unicode-expected.png
  
  	<<Binary file>>
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt_unicode-expected.txt
  
  Index: xslt_unicode-expected.txt
  ===================================================================
  layer at (0,0) size 800x600
    RenderCanvas at (0,0) size 800x600
  layer at (0,0) size 800x34
    RenderBlock {HTML} at (0,0) size 800x34
      RenderBody {BODY} at (8,8) size 784x18
        RenderText {TEXT} at (0,0) size 18x18
          text run at (0,0) width 18: "e \x{E9}"
  
  
  
  1.1                  WebCore/layout-tests/fast/xsl/xslt_unicode.xml
  
  Index: xslt_unicode.xml
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="resources/unicode.xsl"?>
  
  <TEST encoding="UTF-8">e é</TEST>
  
  
  
  1.1                  WebCore/layout-tests/fast/xsl/resources/unicode.xsl
  
  Index: unicode.xsl
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" encoding="UTF-8" version="1.0">
  <xsl:output method="html" encoding="UTF-8"/>
  
  <xsl:template match="/">
      <xsl:value-of select="." />
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  WebCore/layout-tests/fast/xsl/resources/xslt-enc-cyr.xsl
  
  Index: xslt-enc-cyr.xsl
  ===================================================================
  <?xml version="1.0" encoding="iso8859-5"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
      <xsl:output method="html" encoding="KOI8-R"/>
      <xsl:template match="TEST">
          <html xmlns="http://www.w3.org/1999/xhtml">
              <body>
                CHARACTERS IN XSLT: ´ÞÑÐÒÛÕÝÝëÙ âÕÚáâ <br/> <xsl:apply-templates/>
              </body>
          </html>
    </xsl:template>
  
  <xsl:template >
  		<xsl:value-of select="." />
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  WebCore/layout-tests/fast/xsl/resources/xslt-enc.xsl
  
  Index: xslt-enc.xsl
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
      <xsl:output method="html" encoding="UTF-8"/>
      <xsl:template match="TEST">
          <html xmlns="http://www.w3.org/1999/xhtml">
              <head>
                  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
              </head>  
              <body>
                CHARACTERS IN XSLT: ééééééééééé <br/> <xsl:apply-templates/>
              </body>
          </html>
    </xsl:template>
  
  <xsl:template >
  		<xsl:value-of select="." />
  </xsl:template>
  
  </xsl:stylesheet>
  
  
  1.1                  WebCore/layout-tests/fast/xsl/resources/xslt-enc16.xsl
  
  Index: xslt-enc16.xsl
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
      <xsl:output method="html" encoding="UTF-16"/>
      <xsl:template match="TEST">
          <html xmlns="http://www.w3.org/1999/xhtml">
              <body>
                CHARACTERS IN XSLT: ééééééééééé <br/> <xsl:apply-templates/>
              </body>
          </html>
    </xsl:template>
  
  <xsl:template >
  		<xsl:value-of select="." />
  </xsl:template>
  
  </xsl:stylesheet>
  
  



More information about the webkit-changes mailing list