[Python-checkins] bpo-33132: Fix more reference counting issues in the compiler. (GH-6323)

Serhiy Storchaka webhook-mailer at python.org
Sat Mar 31 17:29:40 EDT 2018


https://github.com/python/cpython/commit/aa8e51f5ebb2a71c76059f050de01fc3c985376a
commit: aa8e51f5ebb2a71c76059f050de01fc3c985376a
branch: master
author: Serhiy Storchaka <storchaka at gmail.com>
committer: GitHub <noreply at github.com>
date: 2018-04-01T00:29:37+03:00
summary:

bpo-33132: Fix more reference counting issues in the compiler. (GH-6323)

files:
M Python/compile.c

diff --git a/Python/compile.c b/Python/compile.c
index 9d2ba7b18f11..03b703deb041 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -2843,8 +2843,7 @@ compiler_import_as(struct compiler *c, identifier name, identifier asname)
             attr = PyUnicode_Substring(name, pos, (dot != -1) ? dot : len);
             if (!attr)
                 return 0;
-            ADDOP_O(c, IMPORT_FROM, attr, names);
-            Py_DECREF(attr);
+            ADDOP_N(c, IMPORT_FROM, attr, names);
             if (dot == -1) {
                 break;
             }
@@ -3294,8 +3293,7 @@ compiler_nameop(struct compiler *c, identifier name, expr_context_ty ctx)
                             "param invalid for local variable");
             return 0;
         }
-        ADDOP_O(c, op, mangled, varnames);
-        Py_DECREF(mangled);
+        ADDOP_N(c, op, mangled, varnames);
         return 1;
     case OP_GLOBAL:
         switch (ctx) {



More information about the Python-checkins mailing list