Skip to content

asyncio: don't do anything in _SelectorDatagramTransport if we're closed #28110

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from

Conversation

istankovic
Copy link

It could happen that the transport's sendto() method is invoked after
the transport was closed. Closing the transport sets the _sock attribute
to None, which then causes the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.9/asyncio/selector_events.py", line 1056, in sendto
self._sock.sendto(data, addr)
AttributeError: 'NoneType' object has no attribute 'sendto'

So just check if we're closed before doing anything, similarly to what we already
do in other methods.

It could happen that the transport's sendto() method is invoked after
the transport was closed. Closing the transport sets the _sock attribute
to None, which then causes the following exception:

    Traceback (most recent call last):
      File "/usr/lib/python3.9/asyncio/selector_events.py", line 1056, in sendto
	self._sock.sendto(data, addr)
    AttributeError: 'NoneType' object has no attribute 'sendto'

So just check if we're closed before doing anything, similarly to what we already
do in other methods.
@the-knights-who-say-ni
Copy link

Hello, and thanks for your contribution!

I'm a bot set up to make sure that the project can legally accept this contribution by verifying everyone involved has signed the PSF contributor agreement (CLA).

Recognized GitHub username

We couldn't find a bugs.python.org (b.p.o) account corresponding to the following GitHub usernames:

@istankovic

This might be simply due to a missing "GitHub Name" entry in one's b.p.o account settings. This is necessary for legal reasons before we can look at this contribution. Please follow the steps outlined in the CPython devguide to rectify this issue.

You can check yourself to see if the CLA has been received.

Thanks again for the contribution, we look forward to reviewing it!

@github-actions
Copy link

github-actions bot commented Oct 2, 2021

This PR is stale because it has been open for 30 days with no activity.

@github-actions github-actions bot added the stale Stale PR or inactive for long period of time. label Oct 2, 2021
@github-actions
Copy link

Closing this stale PR because the CLA is still not signed.

@github-actions github-actions bot closed this Feb 18, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting review stale Stale PR or inactive for long period of time.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants