diff options
author | Pablo Galindo <Pablogsal@gmail.com> | 2019-11-19 21:34:03 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-11-19 21:34:03 (GMT) |
commit | 293dd23477eef6e7c1b1e26b5bb2c1e0d79ac3c2 (patch) | |
tree | 295b4eee204f0d1e4723e62825a86310ddc27578 /Lib/asyncio | |
parent | c6b20be85c0de6f2355c67ae6e7e578941275cc0 (diff) | |
download | cpython-293dd23477eef6e7c1b1e26b5bb2c1e0d79ac3c2.zip cpython-293dd23477eef6e7c1b1e26b5bb2c1e0d79ac3c2.tar.gz cpython-293dd23477eef6e7c1b1e26b5bb2c1e0d79ac3c2.tar.bz2 |
Remove binding of captured exceptions when not used to reduce the chances of creating cycles (GH-17246)
Capturing exceptions into names can lead to reference cycles though the __traceback__ attribute of the exceptions in some obscure cases that have been reported previously and fixed individually. As these variables are not used anyway, we can remove the binding to reduce the chances of creating reference cycles.
See for example GH-13135
Diffstat (limited to 'Lib/asyncio')
-rw-r--r-- | Lib/asyncio/proactor_events.py | 2 | ||||
-rw-r--r-- | Lib/asyncio/unix_events.py | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/Lib/asyncio/proactor_events.py b/Lib/asyncio/proactor_events.py index 830d8ed..8338449 100644 --- a/Lib/asyncio/proactor_events.py +++ b/Lib/asyncio/proactor_events.py @@ -711,7 +711,7 @@ class BaseProactorEventLoop(base_events.BaseEventLoop): raise exceptions.SendfileNotAvailableError("not a regular file") try: fsize = os.fstat(fileno).st_size - except OSError as err: + except OSError: raise exceptions.SendfileNotAvailableError("not a regular file") blocksize = count if count else fsize if not blocksize: diff --git a/Lib/asyncio/unix_events.py b/Lib/asyncio/unix_events.py index 6621372..632546a 100644 --- a/Lib/asyncio/unix_events.py +++ b/Lib/asyncio/unix_events.py @@ -330,7 +330,7 @@ class _UnixSelectorEventLoop(selector_events.BaseSelectorEventLoop): async def _sock_sendfile_native(self, sock, file, offset, count): try: os.sendfile - except AttributeError as exc: + except AttributeError: raise exceptions.SendfileNotAvailableError( "os.sendfile() is not available") try: @@ -339,7 +339,7 @@ class _UnixSelectorEventLoop(selector_events.BaseSelectorEventLoop): raise exceptions.SendfileNotAvailableError("not a regular file") try: fsize = os.fstat(fileno).st_size - except OSError as err: + except OSError: raise exceptions.SendfileNotAvailableError("not a regular file") blocksize = count if count else fsize if not blocksize: |