From b881ed6580bcf10d9c0f156f8c527f0a3578419f Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sun, 17 May 2026 13:50:41 +0530 Subject: [PATCH] Handle small reads from files correctly --- kittens/dnd/drag.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/kittens/dnd/drag.go b/kittens/dnd/drag.go index e180b61ab..ac82f2262 100644 --- a/kittens/dnd/drag.go +++ b/kittens/dnd/drag.go @@ -419,8 +419,13 @@ func (dnd *dnd) send_next_file_chunk() (err error) { } n, err := cr.file.Read(read_buf[:]) if n > 0 { + encoded_chunk_sent := false for chunk := range cr.base64.Encode(read_buf[:n], encode_buf[:]) { dnd.drag_status.remote_item_write_id = dnd.send_remote_item_payload(cr.parent_dir_handle, cr.idx_in_parent, cr.idx_in_uri_list, 0, chunk) + encoded_chunk_sent = true + } + if !encoded_chunk_sent { + return dnd.send_next_file_chunk() } } if err != nil {