summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--coverage/pytracer.py14
1 files changed, 11 insertions, 3 deletions
diff --git a/coverage/pytracer.py b/coverage/pytracer.py
index 326c50ba..6723c2a1 100644
--- a/coverage/pytracer.py
+++ b/coverage/pytracer.py
@@ -137,9 +137,17 @@ class PyTracer(TTracer):
self.log(">", f.f_code.co_filename, f.f_lineno, f.f_code.co_name, f.f_trace)
f = f.f_back
sys.settrace(None)
- self.cur_file_data, self.cur_file_name, self.last_line, self.started_context = (
- self.data_stack.pop()
- )
+ try:
+ self.cur_file_data, self.cur_file_name, self.last_line, self.started_context = (
+ self.data_stack.pop()
+ )
+ except IndexError:
+ self.log(
+ "Empty stack!",
+ frame.f_code.co_filename,
+ frame.f_lineno,
+ frame.f_code.co_name
+ )
return None
# if event != 'call' and frame.f_code.co_filename != self.cur_file_name: