diff --git a/proxy/core/base/tcp_server.py b/proxy/core/base/tcp_server.py index 1db40b1662..73e3fdeb31 100644 --- a/proxy/core/base/tcp_server.py +++ b/proxy/core/base/tcp_server.py @@ -92,8 +92,9 @@ def handle_writables(self, writables: Writables) -> bool: ) self.client.flush() if self.must_flush_before_shutdown is True: - teardown = True - self.must_flush_before_shutdown = False + if not self.client.has_buffer(): + teardown = True + self.must_flush_before_shutdown = False return teardown def handle_readables(self, readables: Readables) -> bool: