From 01e0d8ad49d74e93e00748a309f9a54b8a91307e Mon Sep 17 00:00:00 2001 From: Ned Batchelder Date: Sat, 5 Nov 2016 08:50:36 -0400 Subject: A fix for coding declarations, bug #529 --- coverage/phystokens.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'coverage/phystokens.py') diff --git a/coverage/phystokens.py b/coverage/phystokens.py index 5e80ed5..9a697b6 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 -- cgit v1.2.1