RESOLVED FIXED 39048
REGRESSION (r55802): XML errors on Google maps ("Entity 'nbsp' not defined”) with JavaScript disabled
https://bugs.webkit.org/show_bug.cgi?id=39048
Summary REGRESSION (r55802): XML errors on Google maps ("Entity 'nbsp' not defined”) ...
Simon Fraser (smfr)
Reported 2010-05-12 23:06:43 PDT
Created attachment 55947 [details] Screenshot When I go to http://maps.google.com/ with a current build, I see an XML error (see screenshot)
Attachments
Screenshot (68.79 KB, image/png)
2010-05-12 23:06 PDT, Simon Fraser (smfr)
no flags
proposed fix (4.20 KB, patch)
2010-05-14 21:21 PDT, Alexey Proskuryakov
darin: review+
Simon Fraser (smfr)
Comment 1 2010-05-12 23:08:52 PDT
I see this in the r59204 nightly.
Simon Fraser (smfr)
Comment 2 2010-05-12 23:18:35 PDT
I had JS turned off, and in that situation google redirect to their mobile site, which is XML errors.
Simon Fraser (smfr)
Comment 3 2010-05-12 23:20:37 PDT
Mark Rowe points out that there is a behavior change, which is that we didn't used to see an XML error with nbsp on this page, and now we do.
Mark Rowe (bdash)
Comment 4 2010-05-12 23:26:09 PDT
This appears to have been introduced by <http://trac.webkit.org/changeset/55802>.
Mark Rowe (bdash)
Comment 5 2010-05-12 23:33:28 PDT
Prior to r55802 we were parsing the document as XHTML. The change within externalSubsetHandler in XMLTokenizerLibxml2.cpp made it so that we no longer treat the XHTML Mobile DTD as indicating XHTML unless the ENABLE(XHTMLMP) define is set.
Mark Rowe (bdash)
Comment 6 2010-05-12 23:50:58 PDT
Alexey Proskuryakov
Comment 7 2010-05-14 21:21:48 PDT
Created attachment 56136 [details] proposed fix
Alexey Proskuryakov
Comment 8 2010-05-14 21:22:53 PDT
I don't really know what it means to have HTMLMP enabled. Looks like we handle this particular example of XHTMLMP just fine even when it's disabled.
George Staikos
Comment 9 2010-05-15 03:40:51 PDT
This seems like a site bug. The change above will cause xhtmlmp to be parsed with the xhtml parser but xhtmlmp isn't always going to work in that case. If it did, we wouldn't need to have xhtmlmp support in the first place because it would be a no-op.
Alexey Proskuryakov
Comment 10 2010-05-15 12:10:25 PDT
My understanding is that: 1) This patch only affects entity substitution, nothing else. 2) Firefox doesn't support XHTMLMP, but this page works in it. 3) This patch doesn't change behavior when XHTMLMP is enabled, it only affects builds with XHTMLMP disabled. It reverts this aspect to what it was in Safari 4.0.5 - compatible with Firefox and Google Maps.
Alexey Proskuryakov
Comment 11 2010-05-15 15:40:26 PDT
Committed <http://trac.webkit.org/changeset/59556>. George: I'm interested in further discussing consequences of this change, but wanted to get the maps.google.com issue resolved ASAP.
Note You need to log in before you can comment on or make changes to this bug.