bpo-33391: Fix refleak in set_symmetric_difference (GH-6670) · python/cpython@d554699 (original) (raw)
File tree
2 files changed
lines changed
- Misc/NEWS.d/next/Core and Builtins
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 | } |