https://github.com/python/cpython/commit/06a11dffeb50070474d1dcd7fd29d08ad5a4db49 commit: 06a11dffeb50070474d1dcd7fd29d08ad5a4db49 branch: 3.14 author: Miss Islington (bot) <[email protected]> committer: JelleZijlstra <[email protected]> date: 2026-10-21T11:49:03-07:00 summary:
[3.14] gh-159739: Break reference cycles involving property objects (GH-159978) (#160015) (cherry picked from commit 4101d59902bed8278fb50d6ac50e7227e3fe12ab) Co-authored-by: Jelle Zijlstra <[email protected]> files: A Misc/NEWS.d/next/Core_and_Builtins/2026-10-20-00-00-00.gh-issue-159739.848b18.rst M Objects/descrobject.c diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-10-20-00-00-00.gh-issue-159739.848b18.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-10-20-00-00-00.gh-issue-159739.848b18.rst new file mode 100644 index 000000000000000..07f842471b4d0f2 --- /dev/null +++ b/Misc/NEWS.d/next/Core_and_Builtins/2026-10-20-00-00-00.gh-issue-159739.848b18.rst @@ -0,0 +1,2 @@ +Allow the garbage collector to break reference cycles involving property +accessors or names. diff --git a/Objects/descrobject.c b/Objects/descrobject.c index 344f2713af8e07c..f6b87922bd44fd1 100644 --- a/Objects/descrobject.c +++ b/Objects/descrobject.c @@ -1988,7 +1988,11 @@ static int property_clear(PyObject *self) { propertyobject *pp = (propertyobject *)self; + Py_CLEAR(pp->prop_get); + Py_CLEAR(pp->prop_set); + Py_CLEAR(pp->prop_del); Py_CLEAR(pp->prop_doc); + Py_CLEAR(pp->prop_name); return 0; } _______________________________________________ Python-checkins mailing list -- [email protected] To unsubscribe send an email to [email protected] https://mail.python.org/mailman3//lists/python-checkins.python.org Member address: [email protected]
