From 78fe06779d163b3521ab85c68924dae1b916b6aa Mon Sep 17 00:00:00 2001 From: Ned Batchelder Date: Sun, 28 Jun 2009 18:46:20 -0400 Subject: Expat bug reported and noted. --- coverage/tracer.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'coverage/tracer.c') diff --git a/coverage/tracer.c b/coverage/tracer.c index 15a17b2..ba84204 100644 --- a/coverage/tracer.c +++ b/coverage/tracer.c @@ -203,9 +203,12 @@ Tracer_trace(Tracer *self, PyFrameObject *frame, int what, PyObject *arg) it incorrectly: when an exception passes through the C code, it calls trace with an EXCEPTION, but never calls RETURN. This throws off our bookkeeping. To make things right, if this is an EXCEPTION from pyexpat.c, then inject - a RETURN event also. If the bug in pyexpat.c gets fixed someday, we'll - either have to put a version check here, or do something more sophisticated - to detect the EXCEPTION-without-RETURN case that has to be fixed up. + a RETURN event also. + + I've reported the problem with pyexpat.c as http://bugs.python.org/issue6359 . + If the bug in pyexpat.c gets fixed someday, we'll either have to put a + version check here, or do something more sophisticated to detect the + EXCEPTION-without-RETURN case that has to be fixed up. */ if (what == PyTrace_EXCEPTION) { if (strstr(PyString_AS_STRING(frame->f_code->co_filename), "pyexpat.c")) { -- cgit v1.2.1