From 32d3bffc7b8d440849de8e76e03a64225893c00c Mon Sep 17 00:00:00 2001 From: Alexander Bersenev Date: Wed, 27 Jun 2018 01:04:06 +0500 Subject: [PATCH] Revert "simplify dissconnect logic". The idea with task cancelation doesn't work This reverts commit a20b1c99293b67ff3aa0c44a1687691d6a7bf92d. --- mtprotoproxy.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/mtprotoproxy.py b/mtprotoproxy.py index 2c28dcb..86a4860 100755 --- a/mtprotoproxy.py +++ b/mtprotoproxy.py @@ -795,6 +795,7 @@ async def handle_client(reader_clt, writer_clt): if not data: wr.write_eof() await wr.drain() + wr.close() return else: update_stats(user, octets=len(data)) @@ -803,6 +804,8 @@ async def handle_client(reader_clt, writer_clt): except (OSError, asyncio.streams.IncompleteReadError) as e: # print_err(e) pass + finally: + wr.transport.abort() task_tg_to_clt = asyncio.ensure_future(connect_reader_to_writer(reader_tg, writer_clt, user)) task_clt_to_tg = asyncio.ensure_future(connect_reader_to_writer(reader_clt, writer_tg, user))