Analysis: Relative links visited state broken in 3.1/CVS...

Maks Orlovich mo002j at mail.rochester.edu
Sun Dec 29 20:15:25 GMT 2002


Hi...

In both 3.1 and HEAD, links with relative URLs are no longer marked as visited 
when they should be. The reason is that the CSSStyleSelector::encodedurl info 
is nonsense; it is constructed from the CSSStyleSelector ctor using the url 
given to it as a parameter, which in turn comes from m_url in DocumentImpl 
ctor. The problem is, the URL isn't set yet when the element is constructed; 
i.e. my  ad-hoc debug log goes something like this:

** Creating new CSSStyleSelector with url = (null)
create encodedurl:host=file: path=(null) file=(null)
++ setURL = http://sources.redhat.com/glibc/ called



Then, when processing the URLs in checkPseudo it does something like this:
Originally, u=/cgi-bin/cvsweb.cgi/libc?cvsroot=glibc
For element = 82bdec0 URL = file:/cgi-bin/cvsweb.cgi/libc?cvsroot=glibc 
pseudoState = 2

Which is pretty wrong, and obviously breaks things...

No patch since I can't see how this could be fixed "locally".. I'll be happy 
to do any gruntwork, though.

(Thanks to Franz Sirl for noticing it and providing the page - 
sources.redhat.com/glibc where it could be easily tested)

Thanks,
Maks





More information about the kfm-devel mailing list