summaryrefslogtreecommitdiff
path: root/src/flake8/checker.py
diff options
context:
space:
mode:
authorAnthony Sottile <asottile@umich.edu>2020-05-07 11:13:23 -0700
committerAnthony Sottile <asottile@umich.edu>2020-05-07 11:16:00 -0700
commit609010ce7aeecc22a3c104e5c0eb39b3746ace7a (patch)
treeeafb1fff770c50068685100974f4697dd0dc1fb6 /src/flake8/checker.py
parent0c3b8045a7b51aec7abf19dea94d5292cebeeea0 (diff)
downloadflake8-609010ce7aeecc22a3c104e5c0eb39b3746ace7a.tar.gz
Fix logical checks which report position out of bounds
Diffstat (limited to 'src/flake8/checker.py')
-rw-r--r--src/flake8/checker.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/flake8/checker.py b/src/flake8/checker.py
index 572c153..30d44b8 100644
--- a/src/flake8/checker.py
+++ b/src/flake8/checker.py
@@ -523,8 +523,9 @@ class FileChecker(object):
self.processor.update_checker_state_for(plugin)
results = self.run_check(plugin, logical_line=logical_line) or ()
for offset, text in results:
- offset = find_offset(offset, mapping)
- line_number, column_offset = offset
+ line_number, column_offset = find_offset(offset, mapping)
+ if line_number == column_offset == 0:
+ LOG.warning("position of error out of bounds: %s", plugin)
self.report(
error_code=None,
line_number=line_number,
@@ -674,4 +675,7 @@ def find_offset(offset, mapping):
if offset <= token_offset:
position = token[1]
break
+ else:
+ position = (0, 0)
+ offset = token_offset = 0
return (position[0], position[1] + offset - token_offset)