<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>35207</bug_id>
          
          <creation_ts>2010-02-20 23:16:11 -0800</creation_ts>
          <short_desc>all xhtml documents fail to render when XHTMLMP enabled</short_desc>
          <delta_ts>2010-03-10 13:52:26 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Charles Wei">charles.wei</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>laszlo.gombos</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>192241</commentid>
    <comment_count>0</comment_count>
    <who name="Charles Wei">charles.wei</who>
    <bug_when>2010-02-20 23:16:11 -0800</bug_when>
    <thetext>For webkit portings which use XMLTokenizerLibxml2,  When XHTMLMP is enabled, all the XHTML documents fail to render, including all the test cases in LayoutTests/dom/xhtml.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192248</commentid>
    <comment_count>1</comment_count>
      <attachid>49145</attachid>
    <who name="Charles Wei">charles.wei</who>
    <bug_when>2010-02-21 00:01:23 -0800</bug_when>
    <thetext>Created attachment 49145
fix patch

When the XHTMLMP is enabled, the author added one member function to class Document to decide if the document is of XHTMLMP type, and they later on in the tokenizer, it validates if the right Doctype is declared for xhtml-mp document.

The right MIME type for XHTMLMP is &quot;application/vnd.wap.xhtml+xml&quot;,  while in the new member function isXHTMLMPDocument() of Document,  it returns true for both &quot;application/vnd.wap.xhtml+xml&quot; and &quot;application/xhtml+xml&quot;.  In the Tokenizer, it trys to validate that the XHTMLDocument contains the right DTD declaration and public ID (&quot;//WAPFORUM/DTD XHTML Mobile 1.0&quot;),  sure it fails for all the XHTML (non-MP) documents.

Ths fix for this bug is only documents with MIME type &quot;application/wap.vnd.xhtml+xml&quot; will be treated as XHTMLMP documents;   MIME type &quot;application/xhtml+xml&quot; is for XHTML documents.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192264</commentid>
    <comment_count>2</comment_count>
      <attachid>49145</attachid>
    <who name="George Staikos">staikos</who>
    <bug_when>2010-02-21 07:00:38 -0800</bug_when>
    <thetext>Comment on attachment 49145
fix patch

Why does this touch WML?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192634</commentid>
    <comment_count>3</comment_count>
      <attachid>49145</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-02-22 14:28:30 -0800</bug_when>
    <thetext>Comment on attachment 49145
fix patch

Like george, I don&apos;t understand why this channges WML.  Not that the change is wrong, it just needs more explanation.

It looks like this was always backwards:
	#if !ENABLE(XHTMLMP)
1256	        || (extId == &quot;-//WAPFORUM//DTD XHTML Mobile 1.0//EN&quot;)
1257	#endif
?

Or if that should be enabled for all ports, just remove the #if.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192801</commentid>
    <comment_count>4</comment_count>
    <who name="Charles Wei">charles.wei</who>
    <bug_when>2010-02-22 23:51:34 -0800</bug_when>
    <thetext>Thanks, George,  and Eric, for the review. 

The change for WML is a clean-up of the code.   That piece of code is actually identical for both XHTMLMP, WML and XHTML,  I just cleaned it up by removing the XHTMLMP and WML to remove the redundent code. 


1255    #if !ENABLE(XHTMLMP)
1256            || (extId == &quot;-//WAPFORUM//DTD XHTML Mobile 1.0//EN&quot;)
1257    #endif

should only be enabled for XHTMLMP,  while the original code makes it avaiable only if XHTMLMP is disabled,  that is wrong .


I hope this makes it clear and you will re-consider and take the patch . If you have other comments, I would be glad to work on that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>193600</commentid>
    <comment_count>5</comment_count>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2010-02-24 19:14:59 -0800</bug_when>
    <thetext>It looks to me  that this impacts not only XMLTokenizerLibxml2 but also XMLTokenizerQt.cpp. 

Charles, would you consider making the same changes for the Qt port as well together with this patch ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>198321</commentid>
    <comment_count>6</comment_count>
      <attachid>49145</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-03-10 13:52:22 -0800</bug_when>
    <thetext>Comment on attachment 49145
fix patch

Clearing flags on attachment: 49145

Committed r55802: &lt;http://trac.webkit.org/changeset/55802&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>198322</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-03-10 13:52:26 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>49145</attachid>
            <date>2010-02-21 00:01:23 -0800</date>
            <delta_ts>2010-03-10 13:52:22 -0800</delta_ts>
            <desc>fix patch</desc>
            <filename>35207.patch</filename>
            <type>text/plain</type>
            <size>2900</size>
            <attacher name="Charles Wei">charles.wei</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NTA2MSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTggQEAKKzIwMTAtMDItMjAgIENoYXJsZXMgV2VpICA8Y2hhcmxlcy53ZWlAdG9y
Y2htb2JpbGUuY29tLmNuPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEZpeCBodHRwczovL2J1Z3Mud2Via2lnLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzUy
MDcKKyAgICAgICAgV2hlbiBYSFRNTE1QIGlzIGVuYWJsZWQsIGFsbCB4aHRtbCBkb2N1bWVudHMg
ZmFpbCB0byByZW5kZXIgZm9yIHdlYmtpdCBwb3J0aW5ncyB3aWNoIHVzZSBsaWJ4bWwyIHRva2Vu
aXplci4KKworICAgICAgICBObyBuZXcgdGVzdHMgYXMgYWxsIHRoZSB4aHRtbCB0ZXN0IGNhc2Vz
IGluIExheW91dFRlc3RzL2RvbS94aHRtbCBmYWlscyB3aXRob3V0IHRoaXMgZml4IHdoZW4gWEhU
TUxNUCBpcyBlbmFibGVkLgorCisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50Ojppc1hIVE1MTVBEb2N1bWVudCk6CisgICAgICAgICogZG9tL1hN
TFRva2VuaXplckxpYnhtbDIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6WE1MVG9rZW5pemVyOjpp
bnRlcm5hbFN1YnNldCk6CisgICAgICAgIChXZWJDb3JlOjpleHRlcm5hbFN1YnNldEhhbmRsZXIp
OgorCiAyMDEwLTAyLTIwICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgogCiAg
ICAgICAgIFJldmlld2VkIGJ5IE1hY2llaiBTdGFjaG93aWFrLgpJbmRleDogV2ViQ29yZS9kb20v
RG9jdW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAkocmV2
aXNpb24gNTUwNjEpCisrKyBXZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTQ3ODgsOCArNDc4OCw5IEBAIGJvb2wgRG9jdW1lbnQ6OmlzWEhUTUxNUERvY3VtZW50KCkg
Y29uc3QKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIC8vIEFzIHBlciBzZWN0aW9uIDcuMiBv
ZiBPTUEtV0FQLVhIVE1MTVAtVjFfMS0yMDA2MTAyMC1BLnBkZiwgYSBjb25mb3JtaW5nIHVzZXIg
YWdlbnQKICAgICAvLyBNVVNUIGFjY2VwdCBYSFRNTE1QIGRvY3VtZW50IGlkZW50aWZpZWQgYXMg
ImFwcGxpY2F0aW9uL3ZuZC53YXAueGh0bWwreG1sIgotICAgIC8vIGFuZCBTSE9VTEQgYWNjZXB0
IGl0IGlkZW50aWZpZWQgYXMgImFwcGxpY2F0aW9uL3hodG1sK3htbCIKLSAgICByZXR1cm4gZnJh
bWUoKS0+bG9hZGVyKCktPnJlc3BvbnNlTUlNRVR5cGUoKSA9PSAiYXBwbGljYXRpb24vdm5kLndh
cC54aHRtbCt4bWwiIHx8IGZyYW1lKCktPmxvYWRlcigpLT5yZXNwb25zZU1JTUVUeXBlKCkgPT0g
ImFwcGxpY2F0aW9uL3hodG1sK3htbCI7CisgICAgLy8gYW5kIFNIT1VMRCBhY2NlcHQgaXQgaWRl
bnRpZmllZCBhcyAiYXBwbGljYXRpb24veGh0bWwreG1sIiAsICJhcHBsaWNhdGlvbi94aHRtbCt4
bWwiIGlzIGEgCisgICAgLy8gZ2VuZXJhbCBNSU1FIHR5cGUgZm9yIGFsbCBYSFRNTCBkb2N1bWVu
dHMsIG5vdCBvbmx5IGZvciBYSFRNTE1QCisgICAgcmV0dXJuIGZyYW1lKCktPmxvYWRlcigpLT5y
ZXNwb25zZU1JTUVUeXBlKCkgPT0gImFwcGxpY2F0aW9uL3ZuZC53YXAueGh0bWwreG1sIjsKIH0K
ICNlbmRpZgogCkluZGV4OiBXZWJDb3JlL2RvbS9YTUxUb2tlbml6ZXJMaWJ4bWwyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9YTUxUb2tlbml6ZXJMaWJ4bWwyLmNwcAkocmV2aXNpb24g
NTUwNjEpCisrKyBXZWJDb3JlL2RvbS9YTUxUb2tlbml6ZXJMaWJ4bWwyLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMTA1OSwxMyArMTA1OSw3IEBAIHZvaWQgWE1MVG9rZW5pemVyOjppbnRlcm5hbFN1
YnNldChjb25zdAogICAgICAgICB9CiAjZW5kaWYKIAotI2lmIEVOQUJMRShYSFRNTE1QKQotICAg
ICAgICBtX2RvYy0+YWRkQ2hpbGQoRG9jdW1lbnRUeXBlOjpjcmVhdGUobV9kb2MsIGR0ZE5hbWUs
IGV4dElkLCB0b1N0cmluZyhzeXN0ZW1JRCkpKTsKLSNlbGlmIEVOQUJMRShXTUwpCi0gICAgICAg
IG1fZG9jLT5hZGRDaGlsZChEb2N1bWVudFR5cGU6OmNyZWF0ZShtX2RvYywgdG9TdHJpbmcobmFt
ZSksIGV4dElkLCB0b1N0cmluZyhzeXN0ZW1JRCkpKTsKLSNlbHNlCiAgICAgICAgIG1fZG9jLT5h
ZGRDaGlsZChEb2N1bWVudFR5cGU6OmNyZWF0ZShtX2RvYywgdG9TdHJpbmcobmFtZSksIHRvU3Ry
aW5nKGV4dGVybmFsSUQpLCB0b1N0cmluZyhzeXN0ZW1JRCkpKTsKLSNlbmRpZgogICAgIH0KIH0K
IApAQCAtMTI1Miw3ICsxMjQ2LDcgQEAgc3RhdGljIHZvaWQgZXh0ZXJuYWxTdWJzZXRIYW5kbGVy
KHZvaWQqCiAgICAgICAgIHx8IChleHRJZCA9PSAiLS8vVzNDLy9EVEQgWEhUTUwgQmFzaWMgMS4w
Ly9FTiIpCiAgICAgICAgIHx8IChleHRJZCA9PSAiLS8vVzNDLy9EVEQgWEhUTUwgMS4xIHBsdXMg
TWF0aE1MIDIuMC8vRU4iKQogICAgICAgICB8fCAoZXh0SWQgPT0gIi0vL1czQy8vRFREIFhIVE1M
IDEuMSBwbHVzIE1hdGhNTCAyLjAgcGx1cyBTVkcgMS4xLy9FTiIpCi0jaWYgIUVOQUJMRShYSFRN
TE1QKQorI2lmIEVOQUJMRShYSFRNTE1QKQogICAgICAgICB8fCAoZXh0SWQgPT0gIi0vL1dBUEZP
UlVNLy9EVEQgWEhUTUwgTW9iaWxlIDEuMC8vRU4iKQogI2VuZGlmCiAgICAgICAgKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>