Closed
Bug 77519
Opened 25 years ago
Closed 23 years ago
[FIXr][CSS3] incorrect matching in SelectorMatches()
Categories
(Core :: CSS Parsing and Computation, defect, P2)
Core
CSS Parsing and Computation
Tracking
()
RESOLVED
FIXED
mozilla1.4beta
People
(Reporter: glazou, Assigned: bzbarsky)
Details
(Keywords: css3)
Attachments
(1 file, 1 obsolete file)
|
1.24 KB,
patch
|
glazou
:
review+
dbaron
:
superreview+
dbaron
:
approval1.4+
|
Details | Diff | Splinter Review |
Looking back at the code of SelectorMatches for 60290, I discovered two errors in
the code. I am responsible for these errors since they come from or should
have been fixed by :not() integration
a) an unknown pseudo-class generates result = localFalse instead of PR_FALSE
b) negated ID and class selectors matching is incorrect, in particular in case
of multiple negated ID and class selectors in same sequence of simple
selectors.
| Reporter | ||
Updated•25 years ago
|
Status: NEW → ASSIGNED
Keywords: correctness,
css3
| Reporter | ||
Comment 1•25 years ago
|
||
| Reporter | ||
Comment 2•25 years ago
|
||
patch attached ; pierre and marc, can you r= and sr= please ?
Comment 3•25 years ago
|
||
Daniel, do we now have testcases for this? I'm curious why it was not caught before.
Comment 4•25 years ago
|
||
Same here. If we didn't catch it before, my guess is that everybody got confused
with the localTrue/localFalse vs PR_TRUE/PR_FALSE again. It was the same problem
last time around in bug 71647.
I would like to have testcases that go through all the paths in the code.
Hopefully there won't be many other cases to check, so it would be nice to put
them all under the same place, attached to this bug for instance.
| Reporter | ||
Comment 5•25 years ago
|
||
Pierre is right for the first part, it comes from my localFalse/localTrue thing
again. And I apologize again.
The second one is not related directly to that. In fact I missed something in the
selection code for IDs and classes, that's all (but that's a lot).
Both had no incidence on existing stylesheets and existing testcases and that's
why it was hard to see it. To see it, you have to have a test with
a) a non-existing pseudo-class like |:foobar| for instance
b) multiple negated ID or classes selectors in the same sequence of simple
selectors; for instance |p:not(.warning):not(.important)|
Comment 6•25 years ago
|
||
moving to moz1.0 to get it off the un-milestoned list, move it to the
appropriate milestone when you are ready
Priority: -- → P3
Target Milestone: --- → mozilla1.0
Comment 7•24 years ago
|
||
Bugs targeted at mozilla1.0 without the mozilla1.0 keyword moved to mozilla1.0.1
(you can query for this string to delete spam or retrieve the list of bugs I've
moved)
Target Milestone: mozilla1.0 → mozilla1.0.1
| Assignee | ||
Comment 8•23 years ago
|
||
ping? Daniel, could you attach a testcase that fails with the current code?
At least part of this patch was superseded by bug 83616.
| Assignee | ||
Comment 10•23 years ago
|
||
| Assignee | ||
Comment 11•23 years ago
|
||
Attachment #32136 -
Attachment is obsolete: true
| Assignee | ||
Updated•23 years ago
|
Attachment #122418 -
Flags: superreview?(dbaron)
Attachment #122418 -
Flags: review?(glazman)
Attachment #122418 -
Flags: superreview?(dbaron) → superreview+
| Assignee | ||
Comment 12•23 years ago
|
||
I should just take this.
Assignee: glazman → bz-bugspam
Status: ASSIGNED → NEW
Priority: P3 → P2
Summary: [CSS3] incorrect matching in SelectorMatches() → [FIX][CSS3] incorrect matching in SelectorMatches()
Target Milestone: mozilla1.0.1 → mozilla1.4beta
| Reporter | ||
Comment 13•23 years ago
|
||
Comment on attachment 122418 [details] [diff] [review]
glazou's patch updated to tip
r=glazman
Attachment #122418 -
Flags: review?(glazman) → review+
| Assignee | ||
Comment 14•23 years ago
|
||
Comment on attachment 122418 [details] [diff] [review]
glazou's patch updated to tip
Could this please be approved for 1.4b? This just makes sure we have saner
behavior in an error case.
Attachment #122418 -
Flags: approval1.4b?
| Assignee | ||
Updated•23 years ago
|
Summary: [FIX][CSS3] incorrect matching in SelectorMatches() → [FIXr][CSS3] incorrect matching in SelectorMatches()
Comment 15•23 years ago
|
||
Comment on attachment 122418 [details] [diff] [review]
glazou's patch updated to tip
a=sspitzer, but it might be too late for 1.4 beta.
Attachment #122418 -
Flags: approval1.4b? → approval1.4b+
Comment on attachment 122418 [details] [diff] [review]
glazou's patch updated to tip
It is too late. Changing approval from 1.4b to 1.4.
Attachment #122418 -
Flags: approval1.4b+ → approval1.4+
| Assignee | ||
Comment 17•23 years ago
|
||
Checked in for 1.4 final.
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•