summaryrefslogtreecommitdiff
path: root/coverage/ctracer
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2016-03-02 07:05:27 -0500
committerNed Batchelder <ned@nedbatchelder.com>2016-03-02 07:05:27 -0500
commit5a73f39a93a33a41dafa85a63cfcd2f11cdce92a (patch)
tree3c1a38676505236a70a787867269d8f956ee5104 /coverage/ctracer
parent16475bc1922e50f775c3362b7b32d60579f5d60b (diff)
downloadpython-coveragepy-5a73f39a93a33a41dafa85a63cfcd2f11cdce92a.tar.gz
Entry arcs now use the negative first line of the code object instead of -1.
Diffstat (limited to 'coverage/ctracer')
-rw-r--r--coverage/ctracer/tracer.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/coverage/ctracer/tracer.c b/coverage/ctracer/tracer.c
index 0c9a486..ac16b6b 100644
--- a/coverage/ctracer/tracer.c
+++ b/coverage/ctracer/tracer.c
@@ -545,7 +545,12 @@ CTracer_handle_call(CTracer *self, PyFrameObject *frame)
* re-entering a generator also. f_lasti is -1 for a true call, and a
* real byte offset for a generator re-entry.
*/
- self->cur_entry.last_line = (frame->f_lasti < 0) ? -1 : frame->f_lineno;
+ if (frame->f_lasti < 0) {
+ self->cur_entry.last_line = -frame->f_code->co_firstlineno;
+ }
+ else {
+ self->cur_entry.last_line = frame->f_lineno;
+ }
ok:
ret = RET_OK;