https://github.com/python/cpython/commit/65fededf9cc1780d5edbef8a6e0a7cf9bc15aea6
commit: 65fededf9cc1780d5edbef8a6e0a7cf9bc15aea6
branch: main
author: Savannah Ostrowski <[email protected]>
committer: willingc <[email protected]>
date: 2024-07-12T10:34:30+02:00
summary:

Update retroactive comments from GH-117741 (segfault in `FutureIter_dealloc`) 
(GH-121638)

Address comments

files:
M Misc/NEWS.d/3.13.0b1.rst
M Modules/_asynciomodule.c

diff --git a/Misc/NEWS.d/3.13.0b1.rst b/Misc/NEWS.d/3.13.0b1.rst
index 831ba623765df7..ba3b3dbbc08c41 100644
--- a/Misc/NEWS.d/3.13.0b1.rst
+++ b/Misc/NEWS.d/3.13.0b1.rst
@@ -354,16 +354,6 @@ asend().throw()
 
 ..
 
-.. date: 2024-04-13-18-59-25
-.. gh-issue: 115874
-.. nonce: c3xG-E
-.. section: Core and Builtins
-
-Fixed a possible segfault during garbage collection of
-``_asyncio.FutureIter`` objects
-
-..
-
 .. date: 2024-04-13-16-55-53
 .. gh-issue: 117536
 .. nonce: xkVbfv
@@ -883,6 +873,16 @@ Alex Waygood.
 
 ..
 
+.. date: 2024-04-13-18-59-25
+.. gh-issue: 115874
+.. nonce: c3xG-E
+.. section: Library
+
+Fixed a possible segfault during garbage collection of
+``_asyncio.FutureIter`` objects. Patch by Savannah Ostrowski.
+
+..
+
 .. date: 2024-04-13-01-45-15
 .. gh-issue: 115060
 .. nonce: IxoM03
diff --git a/Modules/_asynciomodule.c b/Modules/_asynciomodule.c
index 87ad236cdbb39f..6938aad90dd412 100644
--- a/Modules/_asynciomodule.c
+++ b/Modules/_asynciomodule.c
@@ -1650,7 +1650,6 @@ FutureIter_dealloc(futureiterobject *it)
 {
     PyTypeObject *tp = Py_TYPE(it);
 
-    // FutureIter is a heap type so any subclass must also be a heap type.
     assert(_PyType_HasFeature(tp, Py_TPFLAGS_HEAPTYPE));
 
     PyObject *module = ((PyHeapTypeObject*)tp)->ht_module;
@@ -1661,8 +1660,6 @@ FutureIter_dealloc(futureiterobject *it)
 
     // GH-115874: We can't use PyType_GetModuleByDef here as the type might 
have
     // already been cleared, which is also why we must check if ht_module != 
NULL.
-    // Due to this restriction, subclasses that belong to a different module
-    // will not be able to use the free list.
     if (module && _PyModule_GetDef(module) == &_asynciomodule) {
         state = get_asyncio_state(module);
     }

_______________________________________________
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]

Reply via email to