summaryrefslogtreecommitdiff
path: root/tools/node_modules/eslint/lib/rules/no-trailing-spaces.js
diff options
context:
space:
mode:
Diffstat (limited to 'tools/node_modules/eslint/lib/rules/no-trailing-spaces.js')
-rw-r--r--tools/node_modules/eslint/lib/rules/no-trailing-spaces.js26
1 files changed, 19 insertions, 7 deletions
diff --git a/tools/node_modules/eslint/lib/rules/no-trailing-spaces.js b/tools/node_modules/eslint/lib/rules/no-trailing-spaces.js
index 83c01d5e7e..3a4124f4c0 100644
--- a/tools/node_modules/eslint/lib/rules/no-trailing-spaces.js
+++ b/tools/node_modules/eslint/lib/rules/no-trailing-spaces.js
@@ -90,7 +90,11 @@ module.exports = {
const lines = new Set();
comments.forEach(comment => {
- for (let i = comment.loc.start.line; i <= comment.loc.end.line; i++) {
+ const endLine = comment.type === "Block"
+ ? comment.loc.end.line - 1
+ : comment.loc.end.line;
+
+ for (let i = comment.loc.start.line; i <= endLine; i++) {
lines.add(i);
}
});
@@ -122,7 +126,7 @@ module.exports = {
fixRange = [];
for (let i = 0, ii = lines.length; i < ii; i++) {
- const matches = re.exec(lines[i]);
+ const lineNumber = i + 1;
/*
* Always add linebreak length to line length to accommodate for line break (\n or \r\n)
@@ -132,14 +136,22 @@ module.exports = {
const linebreakLength = linebreaks && linebreaks[i] ? linebreaks[i].length : 1;
const lineLength = lines[i].length + linebreakLength;
+ const matches = re.exec(lines[i]);
+
if (matches) {
const location = {
- line: i + 1,
- column: matches.index
+ start: {
+ line: lineNumber,
+ column: matches.index
+ },
+ end: {
+ line: lineNumber,
+ column: lineLength - linebreakLength
+ }
};
- const rangeStart = totalLength + location.column;
- const rangeEnd = totalLength + lineLength - linebreakLength;
+ const rangeStart = totalLength + location.start.column;
+ const rangeEnd = totalLength + location.end.column;
const containingNode = sourceCode.getNodeByRangeIndex(rangeStart);
if (containingNode && containingNode.type === "TemplateElement" &&
@@ -160,7 +172,7 @@ module.exports = {
fixRange = [rangeStart, rangeEnd];
- if (!ignoreComments || !commentLineNumbers.has(location.line)) {
+ if (!ignoreComments || !commentLineNumbers.has(lineNumber)) {
report(node, location, fixRange);
}
}