From 4a2a64ce2f6f5b3b89d3dbfcd0af29725bb03732 Mon Sep 17 00:00:00 2001 From: "Dmitry D. Chernov" Date: Sat, 23 Dec 2017 05:45:23 +1000 Subject: [PATCH] TcpClient: Catch ConnectionError instead of its particular cases That can be more reliable, especially in the case of using PySocks. --- telethon/extensions/tcp_client.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/telethon/extensions/tcp_client.py b/telethon/extensions/tcp_client.py index 9a007dcd..f59bb9f0 100644 --- a/telethon/extensions/tcp_client.py +++ b/telethon/extensions/tcp_client.py @@ -113,7 +113,7 @@ class TcpClient: self._socket.sendall(data) except socket.timeout as e: raise TimeoutError() from e - except (BrokenPipeError, ConnectionAbortedError): + except ConnectionError: self._raise_connection_reset() except OSError as e: if e.errno == errno.EBADF: @@ -139,10 +139,7 @@ class TcpClient: partial = self._socket.recv(bytes_left) except socket.timeout as e: raise TimeoutError() from e - except ConnectionAbortedError: - # ConnectionAbortedError: [WinError 10053] - # An established connection was aborted by - # the software in your host machine. + except ConnectionError: self._raise_connection_reset() except OSError as e: if e.errno == errno.EBADF or e.errno == errno.ENOTSOCK: