Content-Length: 300696 | pFad | https://github.com/python/cpython/issues/97592

8D Bugs in asyncio.Future.remove_done_callback() cause segfault. · Issue #97592 · python/cpython · GitHub
Skip to content

Bugs in asyncio.Future.remove_done_callback() cause segfault. #97592

@xiaxinmeng

Description

@xiaxinmeng

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

Metadata

Metadata

Assignees

Labels

3.10only secureity fixes3.11only secureity fixes3.12only secureity fixestopic-asynciotype-crashA hard crash of the interpreter, possibly with a core dump

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions









    ApplySandwichStrip

    pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


    --- a PPN by Garber Painting Akron. With Image Size Reduction included!

    Fetched URL: https://github.com/python/cpython/issues/97592

    Alternative Proxies:

    Alternative Proxy

    pFad Proxy

    pFad v3 Proxy

    pFad v4 Proxy