diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2016-11-05 08:50:36 -0400 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2016-11-05 08:50:36 -0400 |
commit | 1752d7e0ddefb87021812d982ec998eefaed5d0f (patch) | |
tree | 0b1ef3c81014f7cd7d39cc1b121197d6015a80ef /coverage/phystokens.py | |
parent | b3f1198035da5576416f2096ca5e0fa19ca5ccab (diff) | |
download | python-coveragepy-git-1752d7e0ddefb87021812d982ec998eefaed5d0f.tar.gz |
A fix for coding declarations, bug #529
Diffstat (limited to 'coverage/phystokens.py')
-rw-r--r-- | coverage/phystokens.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/coverage/phystokens.py b/coverage/phystokens.py index 5e80ed54..9a697b60 100644 --- a/coverage/phystokens.py +++ b/coverage/phystokens.py @@ -290,5 +290,9 @@ def compile_unicode(source, filename, mode): @contract(source='unicode', returns='unicode') def neuter_encoding_declaration(source): """Return `source`, with any encoding declaration neutered.""" - source = COOKIE_RE.sub("# (deleted declaration)", source, count=2) + if COOKIE_RE.search(source): + source_lines = source.splitlines(True) + for lineno in range(min(2, len(source_lines))): + source_lines[lineno] = COOKIE_RE.sub("# (deleted declaration)", source_lines[lineno]) + source = "".join(source_lines) return source |