bpo-33132: Fix more reference counting issues in the compiler. (GH-6323)
(cherry picked from commit aa8e51f5ebb2a71c76059f050de01fc3c985376a)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
diff --git a/Python/compile.c b/Python/compile.c
index 03b4826..d4245e2 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -2742,8 +2742,7 @@
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;
}
@@ -3207,8 +3206,7 @@
"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) {