summaryrefslogtreecommitdiff
path: root/Lib/tokenize.py
diff options
context:
space:
mode:
authorEzio Melotti <ezio.melotti@gmail.com>2012-11-03 17:38:43 +0200
committerEzio Melotti <ezio.melotti@gmail.com>2012-11-03 17:38:43 +0200
commit2cc3b4ba9ffa658784da03f14a0a068e2c61d1b3 (patch)
tree66423060d67ba1f6ad182450edb895cc29ca28f1 /Lib/tokenize.py
parent4552e3f95c3382a4665cb8adab343521f8898331 (diff)
downloadcpython-git-2cc3b4ba9ffa658784da03f14a0a068e2c61d1b3.tar.gz
#16152: fix tokenize to ignore whitespace at the end of the code when no newline is found. Patch by Ned Batchelder.
Diffstat (limited to 'Lib/tokenize.py')
-rw-r--r--Lib/tokenize.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/Lib/tokenize.py b/Lib/tokenize.py
index 59081d3579..29c9e29b30 100644
--- a/Lib/tokenize.py
+++ b/Lib/tokenize.py
@@ -108,7 +108,7 @@ ContStr = group(r"[bB]?[rR]?'[^\n'\\]*(?:\\.[^\n'\\]*)*" +
group("'", r'\\\r?\n'),
r'[bB]?[rR]?"[^\n"\\]*(?:\\.[^\n"\\]*)*' +
group('"', r'\\\r?\n'))
-PseudoExtras = group(r'\\\r?\n', Comment, Triple)
+PseudoExtras = group(r'\\\r?\n|\Z', Comment, Triple)
PseudoToken = Whitespace + group(PseudoExtras, Number, Funny, ContStr, Name)
def _compile(expr):
@@ -473,6 +473,8 @@ def _tokenize(readline, encoding):
if pseudomatch: # scan for tokens
start, end = pseudomatch.span(1)
spos, epos, pos = (lnum, start), (lnum, end), end
+ if start == end:
+ continue
token, initial = line[start:end], line[start]
if (initial in numchars or # ordinary number