Skip to content

Commit 9dc8047

Browse files
committed
more robust placement of lost segment handling
1 parent 644332a commit 9dc8047

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/cfdppy/handler/dest.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -846,8 +846,6 @@ def _handle_fd_pdu(self, file_data_pdu: FileDataPdu) -> None:
846846
self.user.file_segment_recv_indication(file_segment_indic_params)
847847
try:
848848
next_expected_progress = offset + len(data)
849-
if self.transmission_mode == TransmissionMode.ACKNOWLEDGED:
850-
self._lost_segment_handling(offset, len(data))
851849
self.user.vfs.write_data(self._params.fp.file_name, data, offset)
852850
self._params.finished_params.file_status = FileStatus.FILE_RETAINED
853851

@@ -865,6 +863,8 @@ def _handle_fd_pdu(self, file_data_pdu: FileDataPdu) -> None:
865863
return
866864
# Ensure that the progress value is always incremented
867865
self._params.fp.progress = max(next_expected_progress, self._params.fp.progress)
866+
if self.transmission_mode == TransmissionMode.ACKNOWLEDGED:
867+
self._lost_segment_handling(offset, len(data))
868868
except FileNotFoundError:
869869
if self._params.finished_params.file_status != FileStatus.FILE_RETAINED:
870870
self._params.finished_params.file_status = FileStatus.DISCARDED_FILESTORE_REJECTION

0 commit comments

Comments
 (0)