bpo-33391: Fix refleak in set_symmetric_difference (GH-6670) · python/cpython@d554699 (original) (raw)

File tree

2 files changed

lines changed

2 files changed

lines changed

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1 +Fix a leak in set_symmetric_difference().
Original file line number Diff line number Diff line change
@@ -1740,8 +1740,10 @@ set_symmetric_difference(PySetObject *so, PyObject *other)
1740 1740 if (otherset == NULL)
1741 1741 return NULL;
1742 1742 rv = set_symmetric_difference_update(otherset, (PyObject *)so);
1743 -if (rv == NULL)
1743 +if (rv == NULL) {
1744 +Py_DECREF(otherset);
1744 1745 return NULL;
1746 + }
1745 1747 Py_DECREF(rv);
1746 1748 return (PyObject *)otherset;
1747 1749 }