summaryrefslogtreecommitdiffstats
path: root/Python
diff options
context:
space:
mode:
Diffstat (limited to 'Python')
-rw-r--r--Python/ceval.c5
1 files changed, 4 insertions, 1 deletions
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);