mirror of
https://github.com/less/less.js.git
synced 2026-05-01 03:00:22 -04:00
Fixed nested media bug.
This commit is contained in:
committed by
Luke Page
parent
1b0b84551f
commit
ebc41e5c4b
@@ -234,6 +234,13 @@ less.Parser = function Parser(env) {
|
||||
return require('path').resolve(e.filename);
|
||||
}
|
||||
|
||||
function getDebugInfo(index, inputStream, e) {
|
||||
return {
|
||||
lineNumber: getLocation(index, inputStream).line + 1,
|
||||
fileName: getFileName(e)
|
||||
};
|
||||
}
|
||||
|
||||
function LessError(e, env) {
|
||||
var input = getInput(e, env),
|
||||
loc = getLocation(e.index, input),
|
||||
@@ -1063,14 +1070,11 @@ less.Parser = function Parser(env) {
|
||||
// div, .class, body > p {...}
|
||||
//
|
||||
ruleset: function () {
|
||||
var selectors = [], s, rules, match, sourceLineNumber,
|
||||
sourceFileName;
|
||||
var selectors = [], s, rules, match, debugInfo;
|
||||
save();
|
||||
|
||||
if (env.dumpLineNumbers) {
|
||||
sourceLineNumber = getLocation(i, input).line + 1;
|
||||
sourceFileName = getFileName(env);
|
||||
}
|
||||
if (env.dumpLineNumbers)
|
||||
debugInfo = getDebugInfo(i, input, env);
|
||||
|
||||
while (s = $(this.selector)) {
|
||||
selectors.push(s);
|
||||
@@ -1081,10 +1085,8 @@ less.Parser = function Parser(env) {
|
||||
|
||||
if (selectors.length > 0 && (rules = $(this.block))) {
|
||||
var ruleset = new(tree.Ruleset)(selectors, rules, env.strictImports);
|
||||
if (env.dumpLineNumbers) {
|
||||
ruleset.sourceLineNumber = sourceLineNumber;
|
||||
ruleset.sourceFileName = sourceFileName;
|
||||
}
|
||||
if (env.dumpLineNumbers)
|
||||
ruleset.debugInfo = debugInfo;
|
||||
return ruleset;
|
||||
} else {
|
||||
// Backtrack
|
||||
@@ -1188,13 +1190,19 @@ less.Parser = function Parser(env) {
|
||||
},
|
||||
|
||||
media: function () {
|
||||
var features, rules;
|
||||
var features, rules, media, debugInfo;
|
||||
|
||||
if (env.dumpLineNumbers)
|
||||
debugInfo = getDebugInfo(i, input, env);
|
||||
|
||||
if ($(/^@media/)) {
|
||||
features = $(this.mediaFeatures);
|
||||
|
||||
if (rules = $(this.block)) {
|
||||
return new(tree.Media)(rules, features);
|
||||
media = new(tree.Media)(rules, features);
|
||||
if(env.dumpLineNumbers)
|
||||
media.debugInfo = debugInfo;
|
||||
return media;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user