Closed
Bug 1371393
Opened 7 years ago
Closed 7 years ago
Stylo: inDOMUtils::GetRuleColumn reports differently than Gecko
Categories
(Core :: CSS Parsing and Computation, defect, P1)
Core
CSS Parsing and Computation
Tracking
()
RESOLVED
FIXED
mozilla56
Tracking | Status | |
---|---|---|
firefox56 | --- | fixed |
People
(Reporter: jryans, Assigned: ferjm)
References
Details
Attachments
(1 file)
DevTools expects inDOMUtils::GetRuleColumn to report the first column for the rule, but Stylo appears to report the last column. This leads to failures like: * devtools/client/commandline/test/browser_cmd_csscoverage_oneshot.js[1] Got {"reports":[{"selectorText":".page3-test2","start":{"line":9,"column":19}}]}, expected {"reports":[{"selectorText":".page3-test2","start":{"line":9,"column":5}}]} (and more reports like this for the same test) [1]: https://treeherder.mozilla.org/logviewer.html#?job_id=105301412&repo=try&lineNumber=2780
Reporter | ||
Comment 1•7 years ago
|
||
The appears to also affect tests like: * devtools/client/animationinspector/test/browser_animation_pseudo_elements.js[2] console.error: Message: Error: couldn't find start of the rule Stack: getRuleText@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/server/actors/styles.js:1579:13 getAuthoredCssText/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/server/actors/styles.js:1239:20 process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:922:23 walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:806:7 Promise*scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:739:11 schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:770:7 Promise.prototype.then@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:455:5 _handleResultValue@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/task.js:387:7 _run@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/task.js:319:13 TaskImpl@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/task.js:273:3 asyncFunction@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/task.js:247:14 handler@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/protocol.js:1082:19 onPacket@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/server/main.js:1799:15 receiveMessage@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/transport/transport.js:761:7 getRuleText@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/server/actors/styles.js:1579:13 getAuthoredCssText/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/server/actors/styles.js:1239:20 process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:922:23 walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:806:7 Promise*scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:739:11 schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:770:7 Promise.prototype.then@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:455:5 _handleResultValue@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/task.js:387:7 _run@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/task.js:319:13 TaskImpl@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/task.js:273:3 asyncFunction@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/task.js:247:14 handler@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/protocol.js:1082:19 onPacket@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/server/main.js:1799:15 receiveMessage@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/transport/transport.js:761:7 [2]: https://treeherder.mozilla.org/logviewer.html#?job_id=105301412&repo=try&lineNumber=2419
Reporter | ||
Comment 2•7 years ago
|
||
Recommending P1 for this, appears to pop up on more and more tests as I continue sifting.
Flags: needinfo?(bobbyholley)
Updated•7 years ago
|
Flags: needinfo?(bobbyholley)
Priority: -- → P1
Assignee | ||
Updated•7 years ago
|
Assignee: nobody → ferjmoreno
Comment hidden (mozreview-request) |
Comment 4•7 years ago
|
||
mozreview-review |
Comment on attachment 8877196 [details] Bug 1371393 - Stylo: set location for NestedRuleParser during prelude parsing. https://reviewboard.mozilla.org/r/148576/#review152996 I’d prefer not to modify the selectors crate for this, and do it instead in servo/components/style/stylesheets/rule_parser.rs in `<NestedRuleParser as QualifiedRuleParser>::parse_prelude`
Comment hidden (mozreview-request) |
Comment 6•7 years ago
|
||
mozreview-review |
Comment on attachment 8877196 [details] Bug 1371393 - Stylo: set location for NestedRuleParser during prelude parsing. https://reviewboard.mozilla.org/r/148576/#review153502 Looks good, thanks!
Attachment #8877196 -
Flags: review?(simon.sapin) → review+
Assignee | ||
Comment 7•7 years ago
|
||
Merged https://github.com/servo/servo/commit/7334298f3018f4be1b20bdaf58efd4f67beeda4b
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Reporter | ||
Comment 8•7 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/f791b63f00bf
Reporter | ||
Updated•7 years ago
|
status-firefox56:
--- → fixed
Target Milestone: --- → mozilla56
You need to log in
before you can comment on or make changes to this bug.
Description
•