From 1ba9cd6138bfc02b2f65dd5fa4c5fab934e37c26 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sun, 3 Oct 2021 13:06:38 +0530 Subject: [PATCH] Avoid progress messages with no actual progress --- kitty/file_transmission.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/kitty/file_transmission.py b/kitty/file_transmission.py index 48c299895..28d6ffe8f 100644 --- a/kitty/file_transmission.py +++ b/kitty/file_transmission.py @@ -569,6 +569,10 @@ class FileTransmission: self.callback_after(partial(self.transmit_rsync_signature, fs, ar.id, df.file_id, deque())) elif cmd.action in (Action.data, Action.end_data): try: + before = 0 + bf = ar.files.get(cmd.file_id) + if bf is not None: + before = bf.bytes_written df = ar.add_data(cmd) if df.failed: return @@ -577,8 +581,9 @@ class FileTransmission: self.send_status_response( code=ErrorCode.OK, request_id=ar.id, file_id=df.file_id, name=df.name, size=df.bytes_written) else: - self.send_status_response( - code=ErrorCode.PROGRESS, request_id=ar.id, file_id=df.file_id, size=df.bytes_written) + if df.bytes_written > before: + self.send_status_response( + code=ErrorCode.PROGRESS, request_id=ar.id, file_id=df.file_id, size=df.bytes_written) except TransmissionError as err: if ar.send_errors: self.send_transmission_error(ar.id, err)