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
commit90a95fdd608dc94d052a1b79667d60bb41f9dd31 (patch)
treefb8890b51c07fd2b6132813411e8f71a1ab4496b /coverage/control.py
parent9566b1329f16a185f0f750f878dc2d2a90953e59 (diff)
downloadpython-coveragepy-90a95fdd608dc94d052a1b79667d60bb41f9dd31.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 1dbf067..91365e1 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.