diff options
author | Victor Stinner <victor.stinner@gmail.com> | 2013-11-05 17:07:34 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@gmail.com> | 2013-11-05 17:07:34 (GMT) |
commit | 98e818b8e37692faae15c792397765b0bc0ef7ea (patch) | |
tree | cb1374592fc3b78fa61a6c9bbc84035abfdd137f /Python/compile.c | |
parent | 357f5155dc74b691a683a571b1316ce8473c40d0 (diff) | |
download | cpython-98e818b8e37692faae15c792397765b0bc0ef7ea.zip cpython-98e818b8e37692faae15c792397765b0bc0ef7ea.tar.gz cpython-98e818b8e37692faae15c792397765b0bc0ef7ea.tar.bz2 |
Issue #19437: Fix compiler_class(), handle compiler_lookup_arg() failure
Diffstat (limited to 'Python/compile.c')
-rw-r--r-- | Python/compile.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Python/compile.c b/Python/compile.c index 32465f7..8b00211 100644 --- a/Python/compile.c +++ b/Python/compile.c @@ -1772,6 +1772,10 @@ compiler_class(struct compiler *c, stmt_ty s) } i = compiler_lookup_arg(c->u->u_cellvars, str); Py_DECREF(str); + if (i < 0) { + compiler_exit_scope(c); + return 0; + } assert(i == 0); /* Return the cell where to store __class__ */ ADDOP_I(c, LOAD_CLOSURE, i); |