From 293dd23477eef6e7c1b1e26b5bb2c1e0d79ac3c2 Mon Sep 17 00:00:00 2001 From: Pablo Galindo Date: Tue, 19 Nov 2019 21:34:03 +0000 Subject: 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 --- Lib/asynchat.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'Lib/asynchat.py') diff --git a/Lib/asynchat.py b/Lib/asynchat.py index fc1146adbb..f4ba361bd4 100644 --- a/Lib/asynchat.py +++ b/Lib/asynchat.py @@ -117,7 +117,7 @@ class async_chat(asyncore.dispatcher): data = self.recv(self.ac_in_buffer_size) except BlockingIOError: return - except OSError as why: + except OSError: self.handle_error() return -- cgit v1.2.1