diff options
author | Sam Gross <colesbury@gmail.com> | 2024-01-10 18:18:38 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-10 18:18:38 (GMT) |
commit | 73ae2023a76f199ff854f8da14bd9ff8e93ee7fd (patch) | |
tree | 15945814e01279d22bcff6c49b149a4fb7872c3f /Objects | |
parent | 901a971e161e060bd95f3cf3aeebe8b48d6e6dac (diff) | |
download | cpython-73ae2023a76f199ff854f8da14bd9ff8e93ee7fd.zip cpython-73ae2023a76f199ff854f8da14bd9ff8e93ee7fd.tar.gz cpython-73ae2023a76f199ff854f8da14bd9ff8e93ee7fd.tar.bz2 |
gh-113753: Clear finalized bit when putting PyAsyncGenASend back into free list (#113754)
Diffstat (limited to 'Objects')
-rw-r--r-- | Objects/genobject.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/Objects/genobject.c b/Objects/genobject.c index 9614713..f03919c 100644 --- a/Objects/genobject.c +++ b/Objects/genobject.c @@ -6,6 +6,7 @@ #include "pycore_call.h" // _PyObject_CallNoArgs() #include "pycore_ceval.h" // _PyEval_EvalFrame() #include "pycore_frame.h" // _PyInterpreterFrame +#include "pycore_gc.h" // _PyGC_CLEAR_FINALIZED() #include "pycore_genobject.h" // struct _Py_async_gen_state #include "pycore_modsupport.h" // _PyArg_CheckPositional() #include "pycore_object.h" // _PyObject_GC_UNTRACK() @@ -1739,6 +1740,7 @@ async_gen_asend_dealloc(PyAsyncGenASend *o) #endif if (state->asend_numfree < _PyAsyncGen_MAXFREELIST) { assert(PyAsyncGenASend_CheckExact(o)); + _PyGC_CLEAR_FINALIZED((PyObject *)o); state->asend_freelist[state->asend_numfree++] = o; } else |