Closed
Bug 765599
Opened 13 years ago
Closed 12 years ago
CSSStyleSheet.insertRule should throw when there are more than one rule
Categories
(Core :: CSS Parsing and Computation, defect)
Core
CSS Parsing and Computation
Tracking
()
RESOLVED
FIXED
mozilla21
People
(Reporter: kennyluck, Assigned: dbaron)
References
()
Details
(Keywords: dev-doc-complete)
Attachments
(1 file)
29.92 KB,
patch
|
bzbarsky
:
review+
|
Details | Diff | Splinter Review |
See URL for the original spec error report. I think the spec is OK clear in this case, though.
Returning a NS_ERROR_DOM_SYNTAX_ERR if there's any more token after the conditional in [1] seems to work. It might be helpful to read [2] too, to see if some other codes can be cleaned up.
The hard part might be finding a file in /layout/style/test/ to put this test case in...
[1] http://hg.mozilla.org/mozilla-central/file/b1a0fb2bdbf7/layout/style/nsCSSParser.cpp#l1015
[2] http://hg.mozilla.org/mozilla-central/file/b1a0fb2bdbf7/layout/style/nsCSSStyleSheet.cpp#l1765
Comment 1•12 years ago
|
||
can I be assigned this bug???
Reporter | ||
Comment 2•12 years ago
|
||
(In reply to rajesh kumar from comment #1)
> can I be assigned this bug???
Yes, and I just did that. I am sending you a mail for further instructions.
Assignee: nobody → mailto.rajesh05
Status: NEW → ASSIGNED
Assignee | ||
Comment 3•12 years ago
|
||
I just wrote a patch for this, after clarifying the spec, before finding this bug report.
The spec issue, from the css3-conditional disposition of comments, is:
Issue 5:
Issue in spec about insertRule, followup to Issue 7
also raised as first issue in http://lists.w3.org/Archives/Public/www-style/2013Feb/0228.html
Raised by: David Baron, Florian Rivoal
Proposed resolution: http://lists.w3.org/Archives/Public/www-style/2013Feb/0229.html
Florian agrees: http://lists.w3.org/Archives/Public/www-style/2013Feb/0228.html
Edited: http://lists.w3.org/Archives/Public/www-style/2013Feb/0256.html
(Commenter agrees, of course.)
Assignee: mailto.rajesh05 → dbaron
OS: Mac OS X → All
Hardware: x86 → All
Whiteboard: [good first bug][mentor=kennyluck][lang=c++]
Assignee | ||
Comment 4•12 years ago
|
||
This implements the proposed spec clarification in
http://lists.w3.org/Archives/Public/www-style/2013Feb/0229.html which
makes us compatible with WebKit on the insertRule tests in this patch.
I confirmed that the test reports 7 failures without the patch, but
passes with the patch. (I'm a little disturbed by the way our
testharness.js integration elides runs of successive passes.)
Attachment #712083 -
Flags: review?(bzbarsky)
Comment 5•12 years ago
|
||
Comment on attachment 712083 [details] [diff] [review]
Make CSS insertRule methods throw SYNTAX_ERR when given an empty rule or more than one rule.
Reporting PERuleTrailing when !*aResult is a bit odd. Shouldn't we only do that when GetToken() returns true?
Given that we now check for whitespace-only things in the CSS parser and throw,
do we still need the explicit IsEmpty() checks in nsCSSStyleSheet::InsertRuleInternal and nsCSSStyleSheet::InsertRuleIntoGroup?
r=me with those addresed.
Attachment #712083 -
Flags: review?(bzbarsky) → review+
Assignee | ||
Comment 6•12 years ago
|
||
Comment 7•12 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
Target Milestone: --- → mozilla21
Comment 8•12 years ago
|
||
I've added this bug to the compatibility doc. Please correct the info if I'm wrong.
https://developer.mozilla.org/en-US/docs/Site_Compatibility_for_Firefox_21
Comment 9•11 years ago
|
||
I also added a note in:
https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/insertRule
and
https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/21
Keywords: dev-doc-complete
You need to log in
before you can comment on or make changes to this bug.
Description
•