633 bytes, application/xml
382 bytes, text/html
2.91 KB, patch
|Details | Diff | Splinter Review|
2.95 KB, patch
|Details | Diff | Splinter Review|
FF 1.5 doesn't apply CSS rules with selector in uppercase in document after XSLT transformation with the output set to html.
Created attachment 207603 [details] result of the above as HTML For reference, this is the output of the transform, as html.
As result of the testcase of comment #1 the culprit must be in this list: http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&module=PhoenixTinderbox&branch=HEAD&branchtype=match&dir=&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=explicit&mindate=2005-04-18+08%3A00%3A00&maxdate=2005-04-19+06%3A00%3A00&cvsroot=%2Fcvsroot
Ria, could you explain that with a bit more detail? Did you test nightlies between 1.7 and 1.8?
Yes, that's what she did. From that regression range, I would think this could be a regression from bug 290068.
Seems like we're setting case sensitivity eagerly, too.
So we call SetCaseSensitive() in the nsDocument Init() (and at this point we're assuming case-sensitive). Then we reset it once we know whether we're HTML or XHTML, which is in nsHTMLDocument::StartDocumentLoad(). Of course XSLT doesn't call StartDocumentLoad(), right? So how does XSLT actually create the document? How is the document supposed to know it's an HTML document and not an XHTML one?
OK, I see what's up. The document is created via createInstance, which never initializes the mDefaultNamespaceID member of HTMLDocument. That means the zeroing allocator sets it to 0, which happens to be kNamespaceID_None. We should probably fix this part. But anyway, it looks like creating by contract id gives us an HTML document, not an XHTML one. So we should probably override Init() in nsHTMLDocument to call the superclass Init() and then reset the case-sensitivity as needed...
Created attachment 207628 [details] [diff] [review] Fix
Why bother setting mDefaultNamespace to kNameSpaceID_None (== 0)? This is a pretty bad regression (one that we should test for when we get automated tests), would be good to get this on the branches.
> Why bother setting mDefaultNamespace to kNameSpaceID_None (== 0)? Because I think depending on kNameSpaceID_None == 0 is a bad idea.
Comment on attachment 207628 [details] [diff] [review] Fix r+sr=jst
Comment on attachment 207628 [details] [diff] [review] Fix This is probably serious enough a regression to be worth considering for 1.8.0.x. I definitely think we should take this for 1.8.1. The patch is very very safe. Only cases where the document is not actually being loaded (like XSLT) are affected.
how will this affect things like document.implementation.createDocument? I guess not very much since such documents are never styled?
Fixed on trunk. Sicking, createDocument creates the same thing after this patch as it always did. But yes, those documents are never styled, at the moment.
createDocument only creates XML documents anyway.
Comment on attachment 207628 [details] [diff] [review] Fix This has come in too late for 184.108.40.206 (no trunk-baking time) but we'll consider for 220.127.116.11
Fixed on the 1.8 branch.
Comment on attachment 208126 [details] [diff] [review] Patch merged to 1.8.x branch approved for 1.8.0 branch, a=dveditz
Fixed for 18.104.22.168
Marking [rft-dl] (ready for testing in Firefox 22.214.171.124 release candidates)
v.fixed on 1.8.0 branch with Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:126.96.36.199) Gecko/20060308 Firefox/188.8.131.52, I see green.
*** Bug 315380 has been marked as a duplicate of this bug. ***
*** Bug 327902 has been marked as a duplicate of this bug. ***
*** Bug 340980 has been marked as a duplicate of this bug. ***
Added to reftest.