From 0a7d409a4eecf336548dd20b746fc8f7203e765a Mon Sep 17 00:00:00 2001 From: Sei Lisa Date: Wed, 6 Aug 2014 04:12:44 +0200 Subject: [PATCH] Report errors at EOL as errors at next line. --- lslopt/lslparse.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lslopt/lslparse.py b/lslopt/lslparse.py index 4cd8a1d..990236c 100644 --- a/lslopt/lslparse.py +++ b/lslopt/lslparse.py @@ -38,8 +38,11 @@ def fieldpos(inp, sep, n): class EParse(Exception): def __init__(self, parser, msg): - lno = parser.script.count('\n', 0, parser.errorpos) - cno = parser.errorpos - fieldpos(parser.script, '\n', lno) + errorpos = parser.errorpos + if parser.script[errorpos:errorpos+1] == '\n': + errorpos += 1 + lno = parser.script.count('\n', 0, errorpos) + cno = errorpos - fieldpos(parser.script, '\n', lno) # Note the column number reported is in bytes. msg = u"(Line %d char %d): ERROR: %s" % (lno + 1, cno + 1, msg)