summaryrefslogtreecommitdiff
path: root/coverage/ctracer/tracer.c
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2018-09-23 06:44:07 -0400
committerNed Batchelder <ned@nedbatchelder.com>2018-09-23 19:02:21 -0400
commit106828c2cc8bbce1e5fb31c6a89ea3ac025225c1 (patch)
treed25428c8b525941619a2b472d25f309a02189d80 /coverage/ctracer/tracer.c
parentb609117ef73ae372f027686b22f13c488c841253 (diff)
downloadpython-coveragepy-git-106828c2cc8bbce1e5fb31c6a89ea3ac025225c1.tar.gz
Dynamic contexts
Diffstat (limited to 'coverage/ctracer/tracer.c')
-rw-r--r--coverage/ctracer/tracer.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/coverage/ctracer/tracer.c b/coverage/ctracer/tracer.c
index 01f8b19b..7d639112 100644
--- a/coverage/ctracer/tracer.c
+++ b/coverage/ctracer/tracer.c
@@ -341,7 +341,6 @@ CTracer_handle_call(CTracer *self, PyFrameObject *frame)
CFileDisposition * pdisp = NULL;
STATS( self->stats.calls++; )
- self->activity = TRUE;
/* Grow the stack. */
if (CTracer_set_pdata_stack(self) < 0) {
@@ -353,7 +352,7 @@ CTracer_handle_call(CTracer *self, PyFrameObject *frame)
self->pcur_entry = &self->pdata_stack->stack[self->pdata_stack->depth];
/* See if this frame begins a new context. */
- if (self->should_start_context && self->context == Py_None) {
+ if (self->should_start_context != Py_None && self->context == Py_None) {
PyObject * context;
/* We're looking for our context, ask should_start_context if this is the start. */
STATS( self->stats.start_context_calls++; )
@@ -866,6 +865,8 @@ CTracer_trace(CTracer *self, PyFrameObject *frame, int what, PyObject *arg_unuse
goto error;
}
+ self->activity = TRUE;
+
switch (what) {
case PyTrace_CALL:
if (CTracer_handle_call(self, frame) < 0) {