diff options
author | Petri Lehtinen <petri@digip.org> | 2013-02-23 22:12:35 (GMT) |
---|---|---|
committer | Petri Lehtinen <petri@digip.org> | 2013-02-23 22:12:35 (GMT) |
commit | e766c742c1f006c08fa0f48ee43b4edb599a81c9 (patch) | |
tree | 5e87151c39d2afe9ca54eab1a72b0ebf8e7c281d | |
parent | 6d61eaa0d0d89b0e035ce75d810280515befc17a (diff) | |
parent | 0362b54fd9e8158c4b62386f1bd654daf1095ed4 (diff) | |
download | cpython-e766c742c1f006c08fa0f48ee43b4edb599a81c9.zip cpython-e766c742c1f006c08fa0f48ee43b4edb599a81c9.tar.gz cpython-e766c742c1f006c08fa0f48ee43b4edb599a81c9.tar.bz2 |
Revert "Issue #16121: Fix line number accounting in shlex"
-rw-r--r-- | Lib/shlex.py | 16 | ||||
-rw-r--r-- | Lib/test/test_shlex.py | 9 | ||||
-rw-r--r-- | Misc/ACKS | 1 | ||||
-rw-r--r-- | Misc/NEWS | 3 |
4 files changed, 1 insertions, 28 deletions
diff --git a/Lib/shlex.py b/Lib/shlex.py index 05e3fbd..69f3b45 100644 --- a/Lib/shlex.py +++ b/Lib/shlex.py @@ -45,7 +45,6 @@ class shlex: self.state = ' ' self.pushback = deque() self.lineno = 1 - self._lines_found = 0 self.debug = 0 self.token = '' self.filestack = deque() @@ -116,23 +115,12 @@ class shlex: return raw def read_token(self): - if self._lines_found: - self.lineno += self._lines_found - self._lines_found = 0 - - i = 0 quoted = False escapedstate = ' ' while True: - i += 1 nextchar = self.instream.read(1) if nextchar == '\n': - # In case newline is the first character increment lineno - if i == 1: - self.lineno += 1 - else: - self._lines_found += 1 - + self.lineno = self.lineno + 1 if self.debug >= 3: print("shlex: in state", repr(self.state), \ "I see character:", repr(nextchar)) @@ -152,7 +140,6 @@ class shlex: continue elif nextchar in self.commenters: self.instream.readline() - # Not considered a token so incrementing lineno directly self.lineno = self.lineno + 1 elif self.posix and nextchar in self.escape: escapedstate = 'a' @@ -220,7 +207,6 @@ class shlex: continue elif nextchar in self.commenters: self.instream.readline() - # Not considered a token so incrementing lineno directly self.lineno = self.lineno + 1 if self.posix: self.state = ' ' diff --git a/Lib/test/test_shlex.py b/Lib/test/test_shlex.py index 5f7b68f..d2809ae 100644 --- a/Lib/test/test_shlex.py +++ b/Lib/test/test_shlex.py @@ -189,15 +189,6 @@ class ShlexTest(unittest.TestCase): self.assertEqual(shlex.quote("test%s'name'" % u), "'test%s'\"'\"'name'\"'\"''" % u) - def testLineNumbers(self): - data = '"a \n b \n c"\n"x"\n"y"' - for is_posix in (True, False): - s = shlex.shlex(data, posix=is_posix) - for i in (1, 4, 5): - s.read_token() - self.assertEqual(s.lineno, i) - - # Allow this test to be used with old shlex.py if not getattr(shlex, "split", None): for methname in dir(ShlexTest): @@ -855,7 +855,6 @@ Jonathan Niehof Gustavo Niemeyer Oscar Nierstrasz Hrvoje Niksic -Birk Nilson Gregory Nofi Jesse Noller Bill Noon @@ -181,9 +181,6 @@ Core and Builtins Library ------- -- Issue #16121: Fix line number accounting in shlex. Patch by Birk - Nilson. - - Issue #14720: sqlite3: Convert datetime microseconds correctly. Patch by Lowe Thiderman. |