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 | 26c4f8bedaf2e872a7103635b1cbdc402ed2f563 (patch) | |
tree | a297afdbb847ecd5dc006bd5a3703a0eb837f587 /coverage/tracer.c | |
parent | 2f217f38e03b1fd0b3a053f2c47e31a69f186aca (diff) | |
download | python-coveragepy-git-26c4f8bedaf2e872a7103635b1cbdc402ed2f563.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 15a17b2d..ba84204f 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")) {
|