From fcdfa488dde1ce5b4c15de20414ae814e69d2f7b Mon Sep 17 00:00:00 2001 From: XANTRONIX Development Date: Sat, 30 Nov 2024 18:22:31 -0500 Subject: [PATCH] Always flush output before reading line for simplicity --- lib/nntp/tiny/session.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/lib/nntp/tiny/session.py b/lib/nntp/tiny/session.py index f1c1b80..c4748c9 100644 --- a/lib/nntp/tiny/session.py +++ b/lib/nntp/tiny/session.py @@ -48,15 +48,16 @@ class Session(): self.perms: Optional[UserPermission] = None self.article_id: Optional[int] = None - def readline(self): - return self.buf.readline(self.sock) - def print(self, text: str, end: str="\r\n"): return self.output.print(text, end) def flush(self): return self.output.flush() + def readline(self): + self.flush() + return self.buf.readline(self.sock) + def end(self): return self.print('.') @@ -800,7 +801,6 @@ class Session(): def greet(self): self.respond(ResponseCode.NNTP_SERVICE_READY_POST_PROHIBITED) - self.flush() def handle_command(self): line = self.readline() @@ -832,7 +832,6 @@ class Session(): try: while self.active: self.handle_command() - self.flush() self.sock.close() except BrokenPipeError: