]> granicus.if.org Git - python/commitdiff
Issue #29049: Fix refleak introduced by f5eb0c4f5d37.
authorINADA Naoki <songofacandy@gmail.com>
Mon, 26 Dec 2016 09:01:46 +0000 (18:01 +0900)
committerINADA Naoki <songofacandy@gmail.com>
Mon, 26 Dec 2016 09:01:46 +0000 (18:01 +0900)
Python/ceval.c

index e48586dec244328745484c7723c4cc042f7e1148..08fc27f2468b6d7149b26ef467e4b5072bf41e2c 100644 (file)
@@ -4152,8 +4152,11 @@ _PyEval_EvalCodeWithName(PyObject *_co, PyObject *globals, PyObject *locals,
         } else {
             gen = PyGen_NewWithQualName(f, name, qualname);
         }
-        if (gen == NULL)
+        if (gen == NULL) {
+            Py_DECREF(f);
             return NULL;
+        }
+        _PyObject_GC_TRACK(f);
 
         if (is_coro && coro_wrapper != NULL) {
             PyObject *wrapped;