Commit 1d2b7dfc authored by Raymond Hettinger's avatar Raymond Hettinger

Have set conversion replace existing constant if not used elsewhere.

parent 0c7771ca
......@@ -570,7 +570,13 @@ try_set_conversion(unsigned char *codestr, PyObject *consts)
return 0;
}
/* Append new constant onto consts list.*/
/* Append new constant onto consts list or replace existing constant
if there are no other references to it.*/
if (constant->ob_refcnt == 1) {
PyList_SET_ITEM(consts, arg, newconst);
Py_DECREF(constant);
return 1;
}
len_consts = PyList_GET_SIZE(consts);
if (PyList_Append(consts, newconst)) {
Py_DECREF(newconst);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment