diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2009-06-28 18:46:20 -0400 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2009-06-28 18:46:20 -0400 |
commit | 78fe06779d163b3521ab85c68924dae1b916b6aa (patch) | |
tree | 9402bc2b6c43870dfdd9171f5df27e18442582da /coverage/tracer.c | |
parent | 76b030ce538df81d137ca04a1bf42606c8872749 (diff) | |
download | python-coveragepy-78fe06779d163b3521ab85c68924dae1b916b6aa.tar.gz |
Expat bug reported and noted.
Diffstat (limited to 'coverage/tracer.c')
-rw-r--r-- | coverage/tracer.c | 9 |
1 files changed, 6 insertions, 3 deletions
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")) {
|