Pseudo-classes apply to all elements regardless of class selector

Bug #1267552 reported by Martin Owens
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Fix Released
Medium
Martin Owens
libcroco
New
Medium

Bug Description

In the attached examples and screenshots you will see:

Firefox rendering showing 4 colours, first two letters A and B are 'class1' and the second two C and D are 'class2'. The lang psuedo-class applies to the two middle letters B and C.
Inkscape rendering showing 3 colours, the two middle colours are the same.

The difference is that the pseudo class in inkscape is being applied to any element with that lang regardless of other selector such as class. This is an error.

Tags: css
Revision history for this message
Martin Owens (doctormo) wrote :
Revision history for this message
Martin Owens (doctormo) wrote :
Revision history for this message
Martin Owens (doctormo) wrote :

Fixed in r12905. The pseudo-class logic was subtly different from class and attribute matching, it would simply return true if a pseudo class matched. Which might make sense if the pseudo class was always last (only element pseudo classes are) and if the matching algorithm was processing them front to back. So I've simply changed the match logic to match class and attribute logic and fixed the issue.

Changed in inkscape:
assignee: nobody → Martin Owens (doctormo)
status: New → Fix Committed
Changed in libcroco:
importance: Unknown → Medium
status: Unknown → New
su_v (suv-lp)
Changed in inkscape:
importance: Undecided → Medium
milestone: none → 0.91
Bryce Harrington (bryce)
Changed in inkscape:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.