diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2015-02-16 08:21:57 -0500 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2015-02-16 08:21:57 -0500 |
commit | 28f1bce8b6004c7a2e7708768f1cc13a5e1b83e3 (patch) | |
tree | 8e88cea8e49215f1c99ba39c7ac32571d7535f86 /coverage/tracer.c | |
parent | 5c2345b0a32320afcc2fb596ad7277430c0526c4 (diff) | |
download | python-coveragepy-git-28f1bce8b6004c7a2e7708768f1cc13a5e1b83e3.tar.gz |
Fix some refcounting mistakes
Diffstat (limited to 'coverage/tracer.c')
-rw-r--r-- | coverage/tracer.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/coverage/tracer.c b/coverage/tracer.c index 6942e854..fd9332e1 100644 --- a/coverage/tracer.c +++ b/coverage/tracer.c @@ -323,20 +323,21 @@ CTracer_record_pair(CTracer *self, int l1, int l2) { int ret = RET_ERROR; - PyObject * t = Py_BuildValue("(ii)", l1, l2); - if (t != NULL) { - if (PyDict_SetItem(self->cur_entry.file_data, t, Py_None) < 0) { - goto error; - } - Py_DECREF(t); + PyObject * t = NULL; + + t = Py_BuildValue("(ii)", l1, l2); + if (t == NULL) { + goto error; } - else { + + if (PyDict_SetItem(self->cur_entry.file_data, t, Py_None) < 0) { goto error; } ret = RET_OK; error: + Py_XDECREF(t); return ret; } @@ -381,7 +382,6 @@ CTracer_set_pdata_stack(CTracer *self) DataStack_init(self, &self->data_stacks[the_index]); } else { - Py_INCREF(stack_index); the_index = MyInt_AsInt(stack_index); } |