]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
bpo-46417: Fix race condition on setting type __bases__ (GH-30788)
authorVictor Stinner <vstinner@python.org>
Sat, 22 Jan 2022 14:08:42 +0000 (15:08 +0100)
committerGitHub <noreply@github.com>
Sat, 22 Jan 2022 14:08:42 +0000 (15:08 +0100)
commitf1c6ae3270913e095d24ae13ecf96f5a32c8c503
tree99ebab0c63baa9015dbf3c4a9a5a0873e3c9a73d
parentc8a536624e8f5d6612e3c275c5b19592583a8cf8
bpo-46417: Fix race condition on setting type __bases__ (GH-30788)

Fix a race condition on setting a type __bases__ attribute: the
internal function add_subclass() now gets the
PyTypeObject.tp_subclasses member after calling PyWeakref_NewRef()
which can trigger a garbage collection which can indirectly modify
PyTypeObject.tp_subclasses.
Misc/NEWS.d/next/Core and Builtins/2022-01-22-14-39-23.bpo-46417.3U5SfN.rst [new file with mode: 0644]
Objects/typeobject.c