From 76c81eecfa0b2a8a8a62a593ac2bd8c3e6c79acd Mon Sep 17 00:00:00 2001 From: Jeremy Hylton Date: Thu, 11 Jul 2002 16:56:38 +0000 Subject: Don't stomp on an exception set by PyCell_Get() --- Python/ceval.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Python/ceval.c b/Python/ceval.c index 7f7d37e..61db642 100644 --- a/Python/ceval.c +++ b/Python/ceval.c @@ -1734,6 +1734,10 @@ eval_frame(PyFrameObject *f) x = freevars[oparg]; w = PyCell_Get(x); if (w == NULL) { + err = -1; + /* Don't stomp existing exception */ + if (PyErr_Occurred()) + break; if (oparg < f->f_ncells) { v = PyTuple_GetItem(co->co_cellvars, oparg); @@ -1750,7 +1754,6 @@ eval_frame(PyFrameObject *f) UNBOUNDFREE_ERROR_MSG, v); } - err = -1; break; } PUSH(w); -- cgit v0.12