https://github.com/python/cpython/commit/1a23abed1340c44e0296d9963487443f63aea225 commit: 1a23abed1340c44e0296d9963487443f63aea225 branch: 3.6 author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> committer: GitHub <noreply at github.com> date: 2018年10月10日T22:28:08-07:00 summary: Fix a possible decref of a borrowed reference in symtable.c. (GH-9786) (cherry picked from commit fc439d20de32b0ebccca79a96e31f83b85ec4eaf) Co-authored-by: Zackery Spytz <zspytz at gmail.com> files: M Python/symtable.c diff --git a/Python/symtable.c b/Python/symtable.c index 6165cfe162ea..90b07efa0334 100644 --- a/Python/symtable.c +++ b/Python/symtable.c @@ -628,8 +628,10 @@ update_symbols(PyObject *symbols, PyObject *scopes, return 0; itr = PyObject_GetIter(free); - if (!itr) - goto error; + if (itr == NULL) { + Py_DECREF(v_free); + return 0; + } while ((name = PyIter_Next(itr))) { v = PyDict_GetItem(symbols, name);