Crash report
The following example triggers a segfault on the latest stable Python3.8.14. I think there might be a bug in asyncio.Future.remove_done_callback().
import asyncio
fut = asyncio.Future()
fut.add_done_callback(str)
for str in range(63):
fut.add_done_callback(id)
class evil:
def __eq__(self, other):
fut.remove_done_callback(other)
fut.remove_done_callback(evil())
Error messages
Segmentation fault (core dumped)
Your environment
- CPython versions tested on: Python 3.8.14, Python 3.9.0, main branch 68c46ae
- Operating system and architecture: [GCC 7.5.0] on linux
Reactions are currently unavailable
Crash report
The following example triggers a segfault on the latest stable Python3.8.14. I think there might be a bug in asyncio.Future.remove_done_callback().
import asyncio fut = asyncio.Future() fut.add_done_callback(str) for str in range(63): fut.add_done_callback(id) class evil: def __eq__(self, other): fut.remove_done_callback(other) fut.remove_done_callback(evil())Error messages
Segmentation fault (core dumped)
Your environment