summaryrefslogtreecommitdiff
path: root/coverage/control.py
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2015-07-11 08:49:20 -0400
committerNed Batchelder <ned@nedbatchelder.com>2015-07-11 08:49:20 -0400
commit1bbf2cd42d6d86ac71bb429fef320af92f1ef3d6 (patch)
tree6b20aeffbc31cb07e7427948f9998daa12fa51c1 /coverage/control.py
parent72d59223f8fc096576ee4fe9c6b5684ee066123a (diff)
downloadpython-coveragepy-git-1bbf2cd42d6d86ac71bb429fef320af92f1ef3d6.tar.gz
If __file__ disagrees with the frame, use the frame info. Fixes #380.
Diffstat (limited to 'coverage/control.py')
-rw-r--r--coverage/control.py8
1 files changed, 5 insertions, 3 deletions
diff --git a/coverage/control.py b/coverage/control.py
index 1dbf0672..91365e11 100644
--- a/coverage/control.py
+++ b/coverage/control.py
@@ -449,10 +449,12 @@ class Coverage(object):
if dunder_file:
filename = self._source_for_file(dunder_file)
if original_filename and not original_filename.startswith('<'):
- if os.path.basename(original_filename) != os.path.basename(filename):
+ orig = os.path.basename(original_filename)
+ if orig != os.path.basename(filename):
# Files shouldn't be renamed when moved. This happens when
- # exec'ing code, not sure why yet.
- self._warn("File was renamed?: %r became %r" % (original_filename, filename))
+ # exec'ing code. If it seems like something is wrong with
+ # the frame's filename, then just use the original.
+ filename = original_filename
if not filename:
# Empty string is pretty useless.